Skip to content

Conversation

@nmburgan
Copy link
Member

@nmburgan nmburgan commented Jan 3, 2026

No description provided.

@nmburgan nmburgan changed the title Update dependencies, remove Java 11 support, update actions and tasks Update dependencies and namespace, remove Java 11 support, update actions and tasks Jan 3, 2026
@nmburgan nmburgan changed the title Update dependencies and namespace, remove Java 11 support, update actions and tasks Update dependencies and namespace Jan 7, 2026
nmburgan and others added 10 commits January 7, 2026 14:37
In 42.7.7 (pgjdbc/pgjdbc#3757) pgjdbc broke
parameters set via

  (.setObject stmt i (doto (PGobject.)
                       (.setType "bytea")
                       (.setValue "\x42abcdef)))

which is the way pdb has handled them, whether explicitly, or
indirectly via clojure.java.jdbc and next.jdbc, which both default
to (.setObject ...) for parameter types without a more specific
protocol extension.

While this is intended to work (see the issue thread), the pgjdbc
documentation specifies `.setBytes` for bytea parameters, and
`.setArray` for arrays of bytea:

  https://jdbc.postgresql.org/documentation/binary-data/
  https://jdbc.postgresql.org/documentation/server-prepare/#arrays

Add new PDBBytea and VecPDBBytea classes for the bytea and bytea[]
parameters and extend the relevant clojure.java.jdbc and next.jdbc
protocols to call the appropriate PreparedStatement method for each,
rather than the `.setObject` default. Note that we cannot use
defrecords because (by default) honeysql would treat them
as unrecognized extensions.

[[email protected]: remove unused import, fix typo, add
hashCode method to PDBBytea]

Reviewed-by: Austin Blatt <[email protected]>
@austb austb merged commit f4a0bd4 into main Jan 8, 2026
49 of 51 checks passed
@austb austb deleted the dep_updates branch January 8, 2026 05:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants