Firebird Documentation IndexFirebird 3.0.6 Release NotesChanges in the Firebird Engine → Remote Interface/Network Protocol
Firebird Home Firebird Home Prev: Other OptimizationsFirebird Documentation IndexUp: Changes in the Firebird EngineNext: Miscellaneous Improvements

Remote Interface/Network Protocol

Dmitry Yemanov

Tracker item CORE-2530.

Further improvements were made to Firebird's network protocol, providing a denser data stream and better prefetch logic. The following improvements were implemented:

  1. The full length of a field whose value is NULL is no longer sent over the wire. (Tracker item CORE-2897). NULL flags (4 bytes per field) are replaced with a bitmap and only these flags are transmitted, in the bitmap.

    This improvement is available for the DSQL API only, so gbak does not benefit from this improvement, as it uses a lower level BLR API.

  2. The prefetch (batch receive) algorithm is now aware of variable-length messages, so that VARCHARs and NULLs may reduce the transmitted message size, allowing more rows to be transmitted in each batch.

Acknowledgement

This work was sponsored by donations collected at the 9th Firebird Developers' Day conference in Brazil.

Prev: Other OptimizationsFirebird Documentation IndexUp: Changes in the Firebird EngineNext: Miscellaneous Improvements
Firebird Documentation IndexFirebird 3.0.6 Release NotesChanges in the Firebird Engine → Remote Interface/Network Protocol