V.2.1.6 Release (Critical) Jaybird 2.1.6 released, with the following fixes:
- JDBC-97: Blob.getBytes() method should not allow position below 1 — not critical
- JDBC-108: Problems with record resultset to call primary composite — critical
- JDBC-119: updateRow() primary key violation issue — critical
- JDBC-118: Remote PID and process name for FB 2.1 monitoring tables — not critical
Due to critical fixes in JDBC-108 and JDBC-119, everybody using Jaybird versions between 2.1.2 and 2.1.5 is advised to upgrade to this new version to avoid data corruption when doing updates via ResultSet.updateRow() when the table has a composite primary key. Cases where table's primary key has only one column or there is no primary key at all are not affected.
Comments to JDBC-118:
The only platform independent solution turns out to be via the -D property, therefore two new properties are implemented: org.firebirdsql.jdbc.pid and org.firebirdsql.jdbc.processName. If they are specified, values are passed to Firebird 2.1. Also one can use "normal" properties passed via URL or data source configuration. In this case, the property names are process_id and process_name.
With versions of Firebird prior to Fb 2.1, using these properties will cause an exception while connecting to Firebird. A more intelligent solution will be implemented in Jaybird 2.2.
V.2.1.5 Bugfix Release
Jaybird 2.1.5 released, fixing a regression that appeared in v.2.1.4 concerning the Events port on Linux. Please upgrade your installations to this one.
V.2.1.4 Bugfix Release
Jaybird 2.1.4 released. This bugfix release contains a fix to make events run with Firebird 2.1. Also some some fixes to the test cases were made, since a bug with a constant order for table reservation in TPB was fixed in Firebird 2.1 (CORE-1416).
V.2.1.3 Bugfix Release
Jaybird 2.1.3 released. This release fixes only one bug, JDBC-106, which is related to the situation when developers use DatabaseMetaData class with identifiers/patterns with case different to the one in the database.
The solution is to try to execute the query with the original case and when nothing is found, another query with uppercased identifiers is executed. This, in worst case will cause two queries to be executed against the database, which can lead to performance loss.
V.2.1.2 Bugfix Release
Jaybird 2.1.2 is is a bugfix release that targets two main issues:
- JDK 6.0 compatibility. There is a build for JDK 6.0.
All new methods are implemented but the implementation is trivial: it either throws an FBDriverNotCapableException or returns empty result sets (in DatabaseMetaData interface).
Complete support of JDK 6.0 is planned in Jaybird 2.2.
- Full support for Firebird 2 INSERT...RETURNING statements.
V.2.1.1 Bugfix Release
The Jaybird team has released a bugfix version of our JDBC driver. The Jaybird 2.1.1 release includes fixes for the following issues:
- JDBC-92. DatabaseMetaData becomes unusable when the statement that serves the result set is closed
- JDBC-87. Backported feature of upcoming Jaybird 2.2 release that allows specifying the octetsAsBytes connection property and receive byte[] when using the ResultSet.getObject() method
- JDBC-85. Fixed returning of the error messages
- Bug reported in Firebird-Java group. ClassCastException when obtaining byte[] from BLOB fields in cached result set.
Jaybird 2.2 is our next release which will include improved support of the JTA specification (XADataSource and XAResource interfaces). Additionally it already has improved support for OpenOffice.org Base component, which deviates in some places from the JDBC 3.0 specification.