31 January 2023
We are happy to announce the release of Jaybird 5.0.1 and Jaybird 4.0.9.
The following has been fixed since Jaybird 5.0.0:
Fixed: Executing DML with a RETURNING clause containing a blob column would return the blob-id instead of the blob value (jaybird#728)
Fixed: CallableStatement.getString
and CallableStatement.getObject
would incorrectly trim string values (jaybird#729)
Fixed: ResultSetMetaData.getPrecision(int)
of a connectionless result set could throw a NullPointerException
if the column was of type FLOAT
or DOUBLE PRECISION
(jaybird#730)
Jaybird 5 supports Firebird 2.5 and higher, on Java 8, 11, 17 and 19 (support for Java 11 and higher using the Java 11 version of the driver).
See also:
The following has been fixed since Jaybird 4.0.8:
Fixed: Some methods of FBClob
threw NullPointerException
when attempting to use after implicit or explicit free()
(jaybird#719)
Improvement: If the default JVM time zone is a GMT offset, e.g. GMT-08:00
, configure sessionTimeZone
with offset only, e.g. -08:00
(jaybird#720)
Fixed: Executing DML with a RETURNING clause containing a blob column would return the blob-id instead of the blob value (jaybird#728)
Fixed: CallableStatement.getString
would incorrectly trim string values (jaybird#729)
Fixed: ResultSetMetaData.getPrecision(int)
of a connectionless result set could throw a NullPointerException
if the column was of type FLOAT
or DOUBLE PRECISION
(jaybird#730)
Jaybird 4 supports Firebird 2.5 and higher, on Java 7, 8, 11, 17 and 19 (support for Java 11 and higher using the Java 11 version of the driver).
See also:
09 January 2023
We are happy to announce the first release of Jaybird 5.
Jaybird 5 is — from a JDBC perspective — an incremental change from Jaybird 4. However, internally, Jaybird underwent some major changes, the biggest was the removal of JCA (Java Connector Architecture) support.
The major changes and new features in Jaybird 5 are:
Java 7 support dropped
Java Connector Architecture (JCA) support removed
ChaCha wire protocol encryption support (Java 11 and higher only)
Changes to properties
Unification of database and service addressing
Changes to JDBC URL syntax
Removal of LOCAL protocol implementation
Stream blobs are now the default
New parser for generated keys handling (back-ported to Jaybird 4.0.8)
Firebird 4.0 server-side batch updates
Firebird 5.0 multi-row RETURNING support
Firebird Embedded locator service provider (experimental)
Table statistics of a connection (experimental)
See also:
03 January 2023
We are happy to announce the first beta for Jaybird 5.
We’d really appreciate it if you take the time to test this version of Jaybird with your applications. Bug reports about undocumented changes in behavior are appreciated. Feedback can be sent to the firebird-java Google Group or reported on the issue tracker https://github.com/FirebirdSQL/jaybird/issues.
Jaybird 5 is — from a JDBC perspective — an incremental change from Jaybird 4. However, internally, Jaybird underwent some major changes, the biggest was the removal of JCA (Java Connector Architecture) support.
The major changes and new features in Jaybird 5 are:
Java 7 support dropped
Java Connector Architecture (JCA) support removed
ChaCha wire protocol encryption support (Java 11 and higher only)
Changes to properties
Unification of database and service addressing
Changes to JDBC URL syntax
Removal of LOCAL protocol implementation
Stream blobs are now the default
New parser for generated keys handling (back-ported to Jaybird 4.0.8)
Firebird 4.0 server-side batch updates
Firebird 5.0 multi-row RETURNING support
Firebird Embedded locator service provider (experimental)
Table statistics of a connection (experimental)
Jaybird 5.0.0-beta-1 is for testing purposes only, and not intended for production use.
The 5.0.0-beta-1 will have a short life, and we plan to release the GA version mid-January.
See also:
27 November 2022
Jaybird 4.0.8 has been released
The following has been changed or fixed since Jaybird 4.0.7:
Improvement: Backported new generated keys parser from Jaybird 5 to remove dependency on ANTLR (jaybird#718)
With this change, Jaybird no longer relies on antlr-runtime-4.7.2.jar
, if you don’t need it yourself, you can remove this library from the classpath.
See New parser for generated keys handling for more information.
Jaybird 4 supports Firebird 2.5 and higher, on Java 7, 8, 11, 17 and 19 (support for Java 17 and 19 using the Java 11 version of the driver).
See also
11 November 2022
Jaybird 4.0.7 has been released
The following has been changed or fixed since Jaybird 4.0.6:
Improvement: (VAR)CHAR
is now sent to the server with blr_varying2
or blr_text2
which includes the character set information (jaybird#692)
Changed: Usages of String.toUpperCase
and String.toLowerCase
now use Locale.ROOT
to prevent locale-sensitivity issues (jaybird#697)
New feature: Support for NBackup "clean history" option (jaybird#706)
The org.firebirdsql.management.NBackupManager
interface has three new methods: setCleanHistory(boolean)
to enable (or disable) cleaning of history during backup, and setKeepDays(int)
and setKeepRows(int)
to specify the number of days or rows to keep history.
These options require Firebird 4.0.3 or higher.
This feature was backported from Jaybird 5.
Fixed: Calling PreparedStatement.setClob
or PreparedStatement.setBlob
with a null
Clob
, Reader
, Blob
, or InputStream
would result in a NullPointerException
(jaybird#712)
As part of this change the behaviour of setClob
methods accepting a Reader
was changed to be identical to setCharacterStream
, and setBlob
accepting an InputStream
to setBinaryStream
.
The end result before and after this change is identical, but it can result in different memory and performance characteristics, as the stream is now consumed on execute, and not on set.
Jaybird 4 supports Firebird 2.5 and higher, on Java 7, 8, 11, 17 and 19 (support for Java 17 and 19 using the Java 11 version of the driver).
See also
Older posts are available in the archive.