News
July 15, 2024

Dear Firebird Community,

As president of the Firebird Foundation, I'm reaching out to tap into the wealth of experience and knowledge within our user base. We're constantly striving to improve Firebird, and your feedback is crucial in guiding our efforts.

I'd like to ask for your input on a critical question:

What are the 3 biggest problems with Firebird that impact you?

Whether you're developing software with Firebird or using it as the backbone of your business operations, we want to hear about the challenges you face.

No issue is too big or too small – we're interested in everything from technical limitations to documentation gaps, from performance bottlenecks to ecosystem concerns.

Your real-world experiences are invaluable to us. By sharing your top three issues, you'll help us prioritize our development efforts and focus on the areas that matter most to our community.

Please send your thoughts to [email protected].

Feel free to elaborate on your points if you'd like – the more context we have, the better we can understand and address the issues.

Even if you will send just 3 lines, it will be also useful.

Thank you in advance for your time and insights. Your feedback will play a crucial role in shaping the future of Firebird.

Best regards,

Alexey Kovyazin

President, Firebird Foundation

Email to answer: [email protected]

Dear Firebird Community,

As president of the Firebird Foundation, I'm reaching out to tap into the wealth of experience and knowledge within our user base. We're constantly striving to improve Firebird, and your feedback is crucial in guiding our efforts.

I'd like to ask for your input on a critical question:

What are the 3 biggest problems with Firebird that impact you?

Whether you're developing software with Firebird or using it as the backbone of your business operations, we want to hear about the challenges you face.

No issue is too big or too small – we're interested in everything from technical limitations to documentation gaps, from performance bottlenecks to ecosystem concerns.

Your real-world experiences are invaluable to us. By sharing your top three issues, you'll help us prioritize our development efforts and focus on the areas that matter most to our community.

Please send your thoughts to [email protected].

Feel free to elaborate on your points if you'd like – the more context we have, the better we can understand and address the issues.

Even if you will send just 3 lines, it will be also useful.

Thank you in advance for your time and insights. Your feedback will play a crucial role in shaping the future of Firebird.

Best regards,

Alexey Kovyazin

President, Firebird Foundation

Email to answer: [email protected]

June 14, 2024

We are happy to announce the release of Jaybird 5.0.5.

The following has been fixed since Jaybird 5.0.4:

  • Fixed: FBResultSetMetaData.getPrecision would always estimate the precision of NUMERIC or DECIMAL columns instead of obtaining the actual precision if the column position was 71 or higher (#731)

  • Optimized the query to retrieve extended field info for ResultSetMetaData.getPrecision to only retrieve columns of type NUMERIC or DECIMAL (#732)

  • Fixed: PreparedStatement.executeBatch() of statement without parameters throws “Statement used in batch must have parameters [SQLState:07001, ISC error code:335545186]” on Firebird 4.0 or higher (#788)

  • New feature: ResultSetMetaData.isAutoIncrement(int) reports true for identity columns if Jaybird can identify the underlying table and column (#793)

  • New feature: Boolean connection property extendedMetadata (default true) to disable querying of extended metadata for getPrecision(int) and isAutoIncrement(int) of ResultSetMetaData (#795)

  • Improvement: The FILTER_CONDITION of DatabaseMetaData.getIndexInfo is populated for Firebird 5.0 partial indices (#797)

  • Fixed: ResultSet.isBeforeFirst() and ResultSet.isAfterLast() should always report false for an empty result set (#807)

  • Improvement: Statement.getResultSet no longer throws a SQLException with message “Only one result set at a time/statement” if the current result set has already been returned by executeQuery or a previous call to getResultSet (#762)

  • Improvement: Updated JNA dependency to version 5.14.0 (#810)

Jaybird 5 supports Firebird 2.5 and higher, on Java 8, 11, 17, 21, and 22 (support for Java 11 and higher using the Java 11 version of the driver).

See also:

We are happy to announce the release of Jaybird 5.0.5.

The following has been fixed since Jaybird 5.0.4:

  • Fixed: FBResultSetMetaData.getPrecision would always estimate the precision of NUMERIC or DECIMAL columns instead of obtaining the actual precision if the column position was 71 or higher (#731)

  • Optimized the query to retrieve extended field info for ResultSetMetaData.getPrecision to only retrieve columns of type NUMERIC or DECIMAL (#732)

  • Fixed: PreparedStatement.executeBatch() of statement without parameters throws “Statement used in batch must have parameters [SQLState:07001, ISC error code:335545186]” on Firebird 4.0 or higher (#788)

  • New feature: ResultSetMetaData.isAutoIncrement(int) reports true for identity columns if Jaybird can identify the underlying table and column (#793)

  • New feature: Boolean connection property extendedMetadata (default true) to disable querying of extended metadata for getPrecision(int) and isAutoIncrement(int) of ResultSetMetaData (#795)

  • Improvement: The FILTER_CONDITION of DatabaseMetaData.getIndexInfo is populated for Firebird 5.0 partial indices (#797)

  • Fixed: ResultSet.isBeforeFirst() and ResultSet.isAfterLast() should always report false for an empty result set (#807)

  • Improvement: Statement.getResultSet no longer throws a SQLException with message “Only one result set at a time/statement” if the current result set has already been returned by executeQuery or a previous call to getResultSet (#762)

  • Improvement: Updated JNA dependency to version 5.14.0 (#810)

Jaybird 5 supports Firebird 2.5 and higher, on Java 8, 11, 17, 21, and 22 (support for Java 11 and higher using the Java 11 version of the driver).

See also:

April 11, 2024

We've identified an issue where the latest libpthread library versions are not compatible with Firebird 2.5 (including the latest available release of vanilla version 2.5.9.27139 and HQbird 2.5 till the version 2.5.9.27173).

This incompatibility may cause Firebird 2.5 to crash during certain operations on newer Linux distributions. The error occurs frequently in architectures SuperServer and SuperClassic, and less frequently, in Classic.

Immediate Action Required:
To prevent any impact on Firebird 2.5, please follow the guidance provided below.

Assessing Your System:
Determining which Linux distributions are impacted is difiicult since libpthread updates can be applied to older operating system versions, potentially introducing the issue to Firebird. It means that any update of OS can bring the problem to your system, even if you are running old version. It means that you need to test your instance of OS.

Testing for Compatibility:
We've developed a command-line application to test whether libpthread is compatible with Firebird 2.5.

Download Instructions:
•  The binary for the test application can be downloaded from the following link: www.ib-aid.com/download/libpthread/pthr-tst
•  The source code for the test application is also available at this link: www.ib-aid.com/download/libpthread/test.cpp

Execution Guide:
Execute the test application in your terminal as outlined in the instructions below to perform the compatibility check.

For the Operating System with old libptread (i.e., it is compatible with 2.5)  

wget https://ib-aid.com/download/libpthread/pthr-tst
chmod +x pthr-tst
# ./pthr-tst 
Set signals
Sigenv works 

For the Operating System with new libptread (i.e., not compatible with 2.5):

# ./pthr-tst
Set signals
Segmentation fault

What to do next in short-term

For Firebird 2.5 vanilla users:
If you have made the test and found that libpthread is not compatible with Firebird 2.5, change the architecture to Classic (make sure to do not confuse the configuration!), and then plan to reinstall your Linux Operating System to the old version with compatible libpthread, which does not have this problem - as soon as possible.

If you have made the test and did not encounter the problem with libpthread, there is no direct danger at the moment. Make this test after each OS update.

Please note that Firebird 2.5 is discontinued version, and Firebird Project will not release fix for vanilla version of 2.5.

For user of commercial versions
Contact your vendor to receive a fix.

What to do next in long-term? Upgrade!

Take this as a final notice that you need to upgrade to Firebird 5.0. The version 2.5 was good and stable, but it originates from 2010, the majority of products released in that year already retired.

There are enough material to perform upgrade in the smooth and easy way, see for details Practical Migration Guide to Firebird 5.
 

Questions?

Please feel free to ask any questions: [email protected]

We've identified an issue where the latest libpthread library versions are not compatible with Firebird 2.5 (including the latest available release of vanilla version 2.5.9.27139 and HQbird 2.5 till the version 2.5.9.27173).

This incompatibility may cause Firebird 2.5 to crash during certain operations on newer Linux distributions. The error occurs frequently in architectures SuperServer and SuperClassic, and less frequently, in Classic.

Immediate Action Required:
To prevent any impact on Firebird 2.5, please follow the guidance provided below.

Assessing Your System:
Determining which Linux distributions are impacted is difiicult since libpthread updates can be applied to older operating system versions, potentially introducing the issue to Firebird. It means that any update of OS can bring the problem to your system, even if you are running old version. It means that you need to test your instance of OS.

Testing for Compatibility:
We've developed a command-line application to test whether libpthread is compatible with Firebird 2.5.

Download Instructions:
•  The binary for the test application can be downloaded from the following link: www.ib-aid.com/download/libpthread/pthr-tst
•  The source code for the test application is also available at this link: www.ib-aid.com/download/libpthread/test.cpp

Execution Guide:
Execute the test application in your terminal as outlined in the instructions below to perform the compatibility check.

For the Operating System with old libptread (i.e., it is compatible with 2.5)  

wget https://ib-aid.com/download/libpthread/pthr-tst
chmod +x pthr-tst
# ./pthr-tst 
Set signals
Sigenv works 

For the Operating System with new libptread (i.e., not compatible with 2.5):

# ./pthr-tst
Set signals
Segmentation fault

What to do next in short-term

For Firebird 2.5 vanilla users:
If you have made the test and found that libpthread is not compatible with Firebird 2.5, change the architecture to Classic (make sure to do not confuse the configuration!), and then plan to reinstall your Linux Operating System to the old version with compatible libpthread, which does not have this problem - as soon as possible.

If you have made the test and did not encounter the problem with libpthread, there is no direct danger at the moment. Make this test after each OS update.

Please note that Firebird 2.5 is discontinued version, and Firebird Project will not release fix for vanilla version of 2.5.

For user of commercial versions
Contact your vendor to receive a fix.

What to do next in long-term? Upgrade!

Take this as a final notice that you need to upgrade to Firebird 5.0. The version 2.5 was good and stable, but it originates from 2010, the majority of products released in that year already retired.

There are enough material to perform upgrade in the smooth and easy way, see for details Practical Migration Guide to Firebird 5.
 

Questions?

Please feel free to ask any questions: [email protected]

March 10, 2024
More News
Case Studies