Message-ID: From: "vlsi (@vlsi)" To: "pgjdbc/pgjdbc" Date: Thu, 15 May 2025 14:32:19 +0000 Subject: Re: [pgjdbc/pgjdbc] PR #3369: fix: EOFException on PreparedStatement#toString with unset bytea parameter since 42.7.4 In-Reply-To: References: List-Id: X-GitHub-Author-Login: vlsi X-GitHub-Comment-Id: 2884044685 X-GitHub-Comment-Type: issue_comment X-GitHub-Issue: 3369 X-GitHub-Repo: pgjdbc/pgjdbc X-GitHub-Type: comment X-GitHub-Url: https://github.com/pgjdbc/pgjdbc/pull/3369#issuecomment-2884044685 Content-Type: text/plain; charset=utf-8 Looks like for `toString` we need the following: ```java @Nullable ParameterList params; // optional boolean standardConformingStrings; boolean idempotent; // == skipInputStreams ``` I wonder if we use an interface for it instead of (boolean, boolean) parameters? Currently we have ```java String toString(@Nullable ParameterList params, boolean standardConformingStrings); String toExecutable(@Nullable ParameterList params, boolean standardConformingStrings); ``` What if we go for the following? ```java interface SqlContext { boolean getStandardConformingStrings(); boolean getIdempotent(); } @Deprecated String toString(@Nullable ParameterList params, boolean standardConformingStrings); String toString(@Nullable ParameterList params, SqlContext context); ```