Releases: FirebirdSQL/jaybird
Jaybird 5.0.2
What's new
The following has been changed or fixed since Jaybird 5.0.1:
- Fixed: Reconnect transaction with a transaction id exceeding 0x7FFF_FFFF did not work (jaybird#734)
- New feature: add connection property
parallelWorkers
to set Firebird 5.0isc_dpb_parallel_workers
(jaybird#737) - New feature: add
MaintenanceManager.upgradeOds()
for the Firebird 5.0 gfix/service repair action to perform a minor ODS upgrade of a database (jaybird#738) - New feature: add parallel workers support for
BackupManager
(jaybird#739) - New feature: add parallel workers support for sweep in
MaintenanceManager
(jaybird#740) - Fixed:
DatabaseConnectionProperties.setServerBatchBufferSize(int)
ignored provided value and always set default (0, or “use server-side maximum”) (jaybird#741) - New feature: add
MaintenanceManager.fixIcu()
for the Firebird 3.0 gfix/service repair action “ICU” to update or rebuild collations and indexes when the ICU version changed (jaybird#744) - Fixed: The first call to
getTableStatistics()
of aFBTableStatisticsManager
instance returned only a few or even no tables; if no tables were returned, subsequent calls would also return no tables (jaybird#747)
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.
See also the full Jaybird 5 release notes.
Maven
The release is also available on maven(*):
<groupId>org.firebirdsql.jdbc</groupId>
<artifactId>jaybird</artifactId>
<version>5.0.2.java11</version>
* The version depends on your target Java version: 5.0.2.java11
(for Java 11 and higher), or 5.0.2.java8
Jaybird 5.0.1
What's new
The following has been changed or 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
andCallableStatement.getObject
would incorrectly trim string values (jaybird#729) - Fixed:
ResultSetMetaData.getPrecision(int)
of a connectionless result set could throw aNullPointerException
if the column was of typeFLOAT
orDOUBLE PRECISION
(jaybird#730)
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.
See also the full Jaybird 5 release notes.
Maven
The release is also available on maven(*):
<groupId>org.firebirdsql.jdbc</groupId>
<artifactId>jaybird</artifactId>
<version>5.0.1.java11</version>
* The version depends on your target Java version: 5.0.1.java11
(for Java 11 and higher), or 5.0.1.java8
Jaybird 4.0.9
What's new
The following has been changed or fixed since Jaybird 4.0.8:
- Fixed: Some methods of
FBClob
threwNullPointerException
when attempting to use after implicit or explicitfree()
(jaybird#719) - Improvement: If the default JVM time zone is a GMT offset, e.g.
GMT-08:00
, configuresessionTimeZone
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 aNullPointerException
if the column was of typeFLOAT
orDOUBLE PRECISION
(jaybird#730)
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.
See also the full Jaybird 4 release notes.
Maven
The release is also available on maven(*):
<groupId>org.firebirdsql.jdbc</groupId>
<artifactId>jaybird</artifactId>
<version>4.0.9.java11</version>
* The version depends on your target Java version: 4.0.9.java11
(for Java 11 and higher), 4.0.9.java8
, or 4.0.9.java7
Jaybird 5.0.0
What's new
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)
Upgrading from Jaybird 4 to 5 should be simple, but please make sure to read Compatibility changes before using Jaybird 5. See also Upgrading from Jaybird 4 to Jaybird 5.
Bug reports about undocumented changes in behavior are appreciated. Feedback can be sent to the Firebird-java mailing list or reported on the issue tracker https://github.com/FirebirdSQL/jaybird/issues.
See also the full Jaybird 5.0.0 release notes.
Maven
The release is also available on maven(*):
<dependency>
<groupId>org.firebirdsql.jdbc</groupId>
<artifactId>jaybird</artifactId>
<version>5.0.0.java11</version>
</dependency>
* The version depends on your target Java version: 5.0.0.java11
or 5.0.0.java8
.
Jaybird 5.0.0-beta-1
IMPORTANT
This version is provided for testing purposes only. We'd appreciate your feedback, but we'd like to emphasize that this version is not intended for production.
What's new
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)
Upgrading from Jaybird 4 to 5 should be simple, but please make sure to read Compatibility changes before using Jaybird 5. See also Upgrading from Jaybird 4 to Jaybird 5.
Bug reports about undocumented changes in behavior are appreciated. Feedback can be sent to the Firebird-java mailing list or reported on the issue tracker https://github.com/FirebirdSQL/jaybird/issues.
See also the full Jaybird 5.0.0-beta-1 release notes.
Maven
The release is also available on maven(*):
<dependency>
<groupId>org.firebirdsql.jdbc</groupId>
<artifactId>jaybird</artifactId>
<version>5.0.0.java11-beta-1</version>
</dependency>
* The version depends on your target Java version: 5.0.0.java11-beta-1
or 5.0.0.java8-beta-1
.
Jaybird 4.0.8
What's new
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 onantlr-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.
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.
See also the full Jaybird 4 release notes.
Maven
The release is also available on maven(*):
<groupId>org.firebirdsql.jdbc</groupId>
<artifactId>jaybird</artifactId>
<version>4.0.8.java11</version>
* The version depends on your target Java version: 4.0.8.java7
, 4.0.8.java8
, or 4.0.8.java11
(for Java 11 and higher)
Jaybird 4.0.7
What's new
The following has been changed or fixed since Jaybird 4.0.6:
- Improvement:
(VAR)CHAR
is now sent to the server withblr_varying2
orblr_text2
which includes the character set information (jaybird#692) - Changed: Usages of
String.toUpperCase
andString.toLowerCase
now useLocale.ROOT
to prevent locale-sensitivity issues (jaybird#697) - New feature: Support for NBackup "clean history" option (jaybird#706)
Theorg.firebirdsql.management.NBackupManager
interface has three new methods:setCleanHistory(boolean)
to enable (or disable) cleaning of history during backup, andsetKeepDays(int)
andsetKeepRows(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
orPreparedStatement.setBlob
with anull
Clob
,Reader
,Blob
, orInputStream
would result in aNullPointerException
(jaybird#712)
As part of this change the behaviour ofsetClob
methods accepting aReader
was changed to be identical tosetCharacterStream
, andsetBlob
accepting anInputStream
tosetBinaryStream
. 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.
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.
See also the full Jaybird 4 release notes.
Maven
The release is also available on maven(*):
<groupId>org.firebirdsql.jdbc</groupId>
<artifactId>jaybird</artifactId>
<version>4.0.7.java11</version>
* The version depends on your target Java version: 4.0.7.java7
, 4.0.7.java8
, or 4.0.7.java11
(for Java 11 and higher)
Jaybird 4.0.6
What's new
The following has been changed or fixed since Jaybird 4.0.5
- Improvement:
Connection.isValid(int)
now uses the timeout as a network timeout, if possible (jaybird#685)
This is only supported for pure Java connections. For native connections, the timeout is ignored (and aSQLWarning
is registered). NativeResourceUnloadWebListener
would fail in Servlet containers with aNoClassDefFoundError
if JNA wasn't on the classpath (jaybird#686)- Fixed: Calling
isBeforeFirst()
,isAfterLast()
,isFirst()
, orisLast()
on a closed result set resulted in aNullPointerException
instead of aSQLException
(jaybird#689)
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.
See also the full Jaybird 4 release notes.
Maven
The release is also available on maven(*):
<groupId>org.firebirdsql.jdbc</groupId>
<artifactId>jaybird</artifactId>
<version>4.0.6.javaXX</version>
* The version depends on your target Java version: 4.0.6.java7
, 4.0.6.java8
, or 4.0.6.java11
(for Java 11 and higher)
Jaybird 4.0.5
What's new
The following has been changed or fixed since Jaybird 4.0.4
- Fixed:
JnaService
implementation call toisc_service_query
incorrectly includes type (jaybird#678)
This could lead to service requests not completing successfully for native connections.
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.
See also the full Jaybird 4.0.5 release notes.
Maven
The release is also available on maven(*):
<groupId>org.firebirdsql.jdbc</groupId>
<artifactId>jaybird</artifactId>
<version>4.0.5.javaXX</version>
* The version depends on your target Java version: 4.0.5.java7
, 4.0.5.java8
, or 4.0.5.java11
(for Java 11 and higher)
Jaybird 3.0.12
Jaybird 3.0.12 is the last release of Jaybird 3. Jaybird 3 is now end-of-life, and we recommend upgrading to Jaybird 4.
The following has been changed or fixed since Jaybird 3.0.11:
- Jaybird 3 is now end-of-life. Please upgrade to Jaybird 4.
- Fixed:
JnaService
implementation call toisc_service_query
incorrectly includes type (jaybird#678)
This could lead to service requests not completing successfully for native connections.
See the full release notes for more information.
The release is also available on maven(*):
<groupId>org.firebirdsql.jdbc</groupId>
<artifactId>jaybird-jdkXX</artifactId>
<version>3.0.12</version>
* The artifactId depends on your target Java version: jaybird-jdk18
for Java 8 and higher, or jaybird-jdk17
for Java 7