Version 3.18.36 - December 5, 2025
================================================================================
This is a 3.18 patch release with minor improvements and bug fixes
Features and Improvements
-------------------------
#19397 - Add Settings.interpreterWithMetaLookups
#19466 - Wrong SQL rendered for ALTER TABLE .. RENAME CONSTRAINT in SQL Server
Bug Fixes
---------
#19364 - SQL Server JSON_ARRAY() emulation produces StackOverflowError with 1000+ arguments
#19372 - Bad performance when reading / writing PGInterval values to pgjdbc
#19376 - Inconsistent Support annotations between DerivedColumnsList::as and DerivedColumnList[N]::as
#19388 - DELETE .. RETURNING with RAW type doesn't work in Oracle
#19392 - Compilation error in generated Record POJO constructors when table uses a table type reference in PostgreSQL
#19400 - Error when generating code for SQLite table containing both UNIQUE and FOREIGN KEY, when referenced table has no UNIQUE key
#19404 - DefaultOtherBinding may produce bind variable marker despite Settings.statementType being set to STATIC_STATEMENT for some dialects
#19409 - Generated AbstractRoutine setters aren't all affected by the <fluentSetters/> code generation flag
#19413 - BatchSingle executed with R2DBC doesn't attach batched query to Configuration
#19422 - Code generator does not maintain DataTypeDefinition::generationOption when applying forced type
#19441 - Refactor internal Multiset::accept0 logic to avoid redundancy between JSON and JSONB handling
#19444 - Overridable generateRecord(definition, writer) and generateUDTRecord(definition, writer) are not used in JavaGenerator
#19448 - DefaultRenderContext.checkForceInline() does not work for R2DBC connections
#19451 - KotlinGenerator does not produce deepEquals/deepHashCode calls for jooq-postgres-extensions array types
#19456 - Update PostgreSQL parameter count limit to 65535
#19461 - DSLContext::batchMerge's Support documentation should match that of UpdatableRecord::merge
#19471 - Wrong SQL rendered for ALTER TABLE IF EXISTS .. RENAME CONSTRAINT in SQL Server
#19476 - Wrong support documented on RENAME CONSTRAINT clause for Db2
Version 3.19.29 - December 5, 2025
================================================================================
This is a 3.19 patch release with minor improvements and bug fixes
Features and Improvements
-------------------------
#19396 - Add Settings.interpreterWithMetaLookups
Bug Fixes
---------
#19363 - SQL Server JSON_ARRAY() emulation produces StackOverflowError with 1000+ arguments
#19371 - Bad performance when reading / writing PGInterval values to pgjdbc
#19375 - Inconsistent Support annotations between DerivedColumnsList::as and DerivedColumnList[N]::as
#19387 - DELETE .. RETURNING with RAW type doesn't work in Oracle
#19391 - Compilation error in generated Record POJO constructors when table uses a table type reference in PostgreSQL
#19399 - Error when generating code for SQLite table containing both UNIQUE and FOREIGN KEY, when referenced table has no UNIQUE key
#19403 - DefaultOtherBinding may produce bind variable marker despite Settings.statementType being set to STATIC_STATEMENT for some dialects
#19408 - Generated AbstractRoutine setters aren't all affected by the <fluentSetters/> code generation flag
#19412 - BatchSingle executed with R2DBC doesn't attach batched query to Configuration
#19421 - Code generator does not maintain DataTypeDefinition::generationOption when applying forced type
#19440 - Refactor internal Multiset::accept0 logic to avoid redundancy between JSON and JSONB handling
#19443 - Overridable generateRecord(definition, writer) and generateUDTRecord(definition, writer) are not used in JavaGenerator
#19447 - DefaultRenderContext.checkForceInline() does not work for R2DBC connections
#19450 - KotlinGenerator does not produce deepEquals/deepHashCode calls for jooq-postgres-extensions array types
#19455 - Update PostgreSQL parameter count limit to 65535
#19460 - DSLContext::batchMerge's Support documentation should match that of UpdatableRecord::merge
#19467 - Wrong SQL rendered for ALTER TABLE .. RENAME CONSTRAINT in SQL Server
#19470 - Wrong SQL rendered for ALTER TABLE IF EXISTS .. RENAME CONSTRAINT in SQL Server
#19475 - Wrong support documented on RENAME CONSTRAINT clause for Db2
Version 3.20.10 - December 5, 2025
================================================================================
This is a 3.20 patch release with minor improvements and bug fixes
Features and Improvements
-------------------------
#19395 - Add Settings.interpreterWithMetaLookups
#19426 - Result::formatXML should offer a way to configure the binary data encoding
Bug Fixes
---------
#19362 - SQL Server JSON_ARRAY() emulation produces StackOverflowError with 1000+ arguments
#19370 - Bad performance when reading / writing PGInterval values to pgjdbc
#19374 - Inconsistent Support annotations between DerivedColumnsList::as and DerivedColumnList[N]::as
#19386 - DELETE .. RETURNING with RAW type doesn't work in Oracle
#19390 - Compilation error in generated Record POJO constructors when table uses a table type reference in PostgreSQL
#19398 - Error when generating code for SQLite table containing both UNIQUE and FOREIGN KEY, when referenced table has no UNIQUE key
#19402 - DefaultOtherBinding may produce bind variable marker despite Settings.statementType being set to STATIC_STATEMENT for some dialects
#19407 - Generated AbstractRoutine setters aren't all affected by the <fluentSetters/> code generation flag
#19411 - BatchSingle executed with R2DBC doesn't attach batched query to Configuration
#19420 - Code generator does not maintain DataTypeDefinition::generationOption when applying forced type
#19435 - Native implementations of STARTS_WITH, ENDS_WITH, and CONTAINS should cast arguments to String types if they're not strings
#19439 - Refactor internal Multiset::accept0 logic to avoid redundancy between JSON and JSONB handling
#19442 - Overridable generateRecord(definition, writer) and generateUDTRecord(definition, writer) are not used in JavaGenerator
#19446 - DefaultRenderContext.checkForceInline() does not work for R2DBC connections
#19449 - KotlinGenerator does not produce deepEquals/deepHashCode calls for jooq-postgres-extensions array types
#19454 - Update PostgreSQL parameter count limit to 65535
#19459 - DSLContext::batchMerge's Support documentation should match that of UpdatableRecord::merge
#19465 - Wrong SQL rendered for ALTER TABLE .. RENAME CONSTRAINT in SQL Server
#19469 - Wrong SQL rendered for ALTER TABLE IF EXISTS .. RENAME CONSTRAINT in SQL Server
#19474 - Wrong support documented on RENAME CONSTRAINT clause for Db2