Download Latest Version 3.20.7 source code.tar.gz (2.6 MB)
Email in envelope

Get an email when there's a new version of jOOQ

Home / version-3.19.26
Name Modified Size InfoDownloads / Week
Parent folder
3.19.26 source code.tar.gz 2025-09-11 2.4 MB
3.19.26 source code.zip 2025-09-11 5.0 MB
README.md 2025-09-11 3.4 kB
Totals: 3 Items   7.4 MB 0

Version 3.19.26 - September 11, 2025

This is a 3.19 patch release with minor improvements and bug fixes

Features and Improvements

[#18899] - Add information about the lack of thread safety in Meta implementations to Meta Javadoc [#18953] - Add Javadoc to various SPIs about an expectation for them to be side-effect free and thus cacheable [#18980] - Improve DSLContext.meta(Catalog...) and similar Javadoc to explain that these are intended to be used with generated code

Bug Fixes

[#18860] - Meta.getSequences() only lists sequences of current catalog in SQL Server [#18864] - DuckDB code generation can't generate sequences for multiple catalogs [#18867] - DuckDB DSL.currentTime() returns NULL [#18873] - DuckDB doesn't support TIME precision [#18884] - HTML encoding issue in DataType Javadoc [#18889] - Bad routine code generated when using array types in H2 stored functions [#18903] - NullPointerException in various locations when another thread cancels a blocking, JDBC backed Subscription [#18907] - Base64 error when using multiset, binary column, and custom converter in MySQL [#18912] - Parser cannot handle Long.MIN_VALUE signed integer literal in rare contexts [#18915] - KotlinGenerator produces bad code when sequences reference Long.MIN_VALUE with their flags [#18920] - Cannot use Parser::parseSignedIntegerLiteral to parse BigInteger sequence flag values [#18923] - KotlinGenerator generates invalid code for sequences with BigInteger MINVALUE or MAXVALUE flags [#18929] - Avoid allocating StringBuilder in PostgresUtils::toPGObjectOrArray if not necessary [#18933] - Avoid DefaultDSLContext allocation in AbstractQueryPart::equals [#18937] - Revert to using classes instead of records for Cache.Key2 and Cache.Key3 objects [#18943] - Override FieldAlias::equals and hashCode to improve reflection cache performance [#18957] - Bad result in MariaDB when MULTISET contents contain binary data [#18963] - Wrong data type generated in DDL for VARBINARY converted as UUID type [#18967] - Bad DDL generated when attempting to CREATE TABLE with UUID column in Oracle and other dialects [#18972] - ORA-01790 when projecting NULL bind value of type BLOB in UNION ALL query [#18976] - Bad rendering of unsupported OffsetTime type in Oracle [#18985] - Avoid calling Stream::collect in Result::collect and Cursor::collect [#18993] - Race condition in JooqLogger leads to too many identical messages being logged, where only one is requested [#18996] - QOM generated equals() methods shouldn't use StringUtils::equals, but Objects::equals [#19006] - Make DefaultExecuteContext available to internals via ThreadLocal [#19011] - Change AbstractParseContext to be an AbstractLazyScope [#19020] - Regression: Wrong DDL exported by MetaImpl for MySQL DEFAULT CURRENT_TIMESTAMP columns [#19023] - Adding a DDL comment to aliased columns produces wrong SQL, or does not maintain comment after execution [#19028] - DDLDatabase and H2Database shouldn't generate VARCHAR(1000000000) for VARCHAR types without explicit length [#19037] - ALTER TABLE .. ADD FOREIGN KEY .. REFERENCES references unqualified table name when column is also added [#19041] - Correctly handle NULLS FIRST | NULLS LAST in SEEK method

Source: README.md, updated 2025-09-11