Jaybird 6.0.1 and Jaybird 5.0.7 released

We are happy to announce the release of Jaybird 6.0.1 and Jaybird 5.0.7. Both releases provide a number of performance improvements to blob handling, and some bug fixes.

We plan to offer more blob performance improvements in upcoming releases of Jaybird 5 and 6, for Firebird 5.0.3 and higher (see also New Article: Data access methods used in Firebird).

Jaybird 6.0.1

The following was fixed or changed since Jaybird 6.0.0:

  • Improvement: backported deferred blob open optimization from Jaybird 7 (#842)
  • Fixed: NullPointerException in getGeneratedKeys() with blob columns after (auto)commit (#846)
  • Fixed: Fetch response with status=0 (FETCH_OK) and count=0 was logged on DEBUG as an unexpected response (#848)
  • Improvement: backported fetching all known blob info items on open from Jaybird 7 (#852)
  • Dependency update: updated net.java.dev.jna:jna-jpms from 5.16.0 to 5.17.0 (used by jaybird-native) (#854)
  • Dependency update: updated org.bouncycastle:bcprov-jdk18on from 1.79 to 1.80 (used by chacha64-plugin) (#856)

Jaybird 6 supports Firebird 3.0 and higher, on Java 17, Java 21, and Java 24.

Bug reports about undocumented changes in behavior are appreciated. Feedback can be sent to Firebird-java or reported on the issue tracker https://github.com/FirebirdSQL/jaybird/issues.

See also:

Jaybird 5.0.7

The following has been changed or fixed since Jaybird 5.0.6:

  • Improvement: backported deferred blob open optimization from Jaybird 7 (#841)
  • Fixed: NullPointerException in getGeneratedKeys() with blob columns after (auto)commit (#846)
  • Fixed: Fetch response with status=0 (FETCH_OK) and count=0 was logged on DEBUG as an unexpected response (#848)
  • Improvement: backported performance improvements for blob reading and writing from Jaybird 6 (#850)
  • Improvement: backported fetching all known blob info items on open from Jaybird 7 (#852)
  • Dependency update: updated net.java.dev.jna:jna-jpms from 5.15.0 to 5.17.0 (used by native and embedded protocols) (#855)

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

Bug reports about undocumented changes in behavior are appreciated. Feedback can be sent to Firebird-java or reported on the issue tracker https://github.com/FirebirdSQL/jaybird/issues.

See also:

Article: Data access methods used in Firebird

From firebirdsql.org:

Don’t be fooled with the title! This is not just another article. 

Data access methods used in Firebird” is a foundation document (88 pages!) for anyone serious about Firebird queries’ performance. Just like important books that change how we think about technology, this article will change how you work with Firebird queries.

Created by author of Firebird documentation Denis Simonov and Firebird engine developer Dmitry Yemanov, this article explains complex concepts of Firebird optimization in clear language, with numerous examples and visual execution plans.

This document provides an unprecedented look at Firebird’s query processing engine, covering:

  • Primary data access methods – How Firebird reads tables, uses indexes, and processes data
  • Filtering techniques – The various ways Firebird filters data streams
  • Joining algorithms – Detailed explanations of Nested Loop, Hash, and Merge joins
  • Advanced optimization strategies – How Firebird decides the most efficient execution plan

Who Should Read This

  • Firebird Database Administrators
  • Advanced SQL developers
  • Anyone who wants to make their Firebird databases run better

This knowledge is so important that we will use it as the basis for our Advanced Certification Exam for Firebird SQL developers. 

Read article here  (also available as PDF version).

Introducing mcpFirebird: A Model Context Protocol Project for Firebird

Great news for the Firebird community! A new project, mcpFirebird, has been launched and is now available on GitHub at https://github.com/PuroDelphi/mcpFirebird. What makes this release particularly interesting is that mcpFirebird is built as a Model Context Protocol (MCP) project, bringing a structured approach to working with Firebird databases.

For those unfamiliar, the Model Context Protocol is a framework designed to streamline interactions between applications AI and databases like Firebird. With mcpFirebird, this concept is put into action, offering a tool that could simplify development tasks while staying true to the strengths of the Firebird engine.

Blob speed improvements are coming sooner than expected!

Great news for the Firebird community!

Thanks to several of the participants of the 21st Firebird Developers Day (FDD), significant improvements have been made to blob traffic performance, especially in high-latency network environments. These enhancements were implemented by Vlad Khorsun in two phases.

The first phase, already released in Firebird 5.02, delivered remarkable performance gains of up to 49%!

The second phase, delivering up to 97% gains, was originally scheduled for Firebird 6, but it is coming much sooner, in the upcoming Firebird 5.03!

And you will not need to pay anything extra for this, since Firebird is 100% free!

1 2 3