Join Firebird!

Join Firebird Foundation to support Firebird SQL development and receive multiple bonuses

Follow Us

Select your media preference

Newsletter

Subscribe to Firebird’s Newsletter to receive the latest news

Developer's Report: Firebird Core Development & Coordination
June to August 2016
 
August 2016
 
Built-in replication:
  • Fixed user-defined filters wrongly affecting system tables
  • Fixed "blob not found" errors during asynchronous replication
  • Reworked internals to better fit the v4 codebase, revisited replication API
Other v4 development:
  • Discussed and reviewed pull requests by RedSoft
  • Draft implementation for CORE-1132 and CORE-2040 (proposed for discussion via pull request #46)
  • Slightly refactored csb initialization to better control its lifetime (related to CORE-809)
  • Reviewed and merged pull requests #44 and #45
v3 bugfixing:
  • CORE-5329: Database gets partially corrupted in the "no-reserve" mode (debugged and suggested solution to Vlad)
July 2016
 
Built-in replication:
  • Auto-restart replication from the first available segment
  • Fixed late deletion of already replicated segments
  • Resolved issue with stuck replication if more then 2000 archive segments are pending
  • Added verbose logging option (for debugging purposes)
Auto-updated statistics:
  • Initial concepts discussion with Vlad
Other v4 development:
  • Discussed and reviewed pull requests by RedSoft
  • Fixed regression (inifinite loop) in the optimizer related to the cross joins handling
v3 bugfixing:
  • CORE-5307: Random 'invalid transaction handle' errors are returned from the engine
  • CORE-5246: String truncation error while selecting from MON$ tables if some user-defined context variable exceeds 255 bytes in length
  • Postfix for CORE-5277: zero-initialize strings allocated for (? IS NULL) parameters to avoid garbage being read while validating the length
  • Fixed server crash after Adriano's commit (transient bug)
Generic bugfixing (all versions):
  • CORE-5236: IN/ANY/ALL predicates may cause sub-optimal (late filtering) execution of joins
June 2016
 
Built-in replication:
  • Fixed permission issue for journal segments (Linux only)
  • Changed the control file format, partial implementation of the safe journal replay
  • Fixed lockups when the journal directory does not exist
  • Completed porting the existing replication code to the v3/v4 codebase
Other v4 development:
  • Bumped ODS version to 13.0, adjusted the engine libary name and other dependencies
  • Reviewed and merged pull requests #29, #35, #38
v3 bugfixing:
  • CORE-5268: Nested OR conditions may lead to incorrest results
  • CORE-5154: Services API don't work with non-ascii database names (ported from aafemt/firebird)
Generic bugfixing (all versions):
  • CORE-5275: Expression index may become inconsistent if CREATE INDEX was interrupted after b-tree creation but before commiting
 
Dmitry Yemanov
Penza, Russia
June to August 2016
 
August 2016
 
Built-in replication:
  • Fixed user-defined filters wrongly affecting system tables
  • Fixed "blob not found" errors during asynchronous replication
  • Reworked internals to better fit the v4 codebase, revisited replication API
Other v4 development:
  • Discussed and reviewed pull requests by RedSoft
  • Draft implementation for CORE-1132 and CORE-2040 (proposed for discussion via pull request #46)
  • Slightly refactored csb initialization to better control its lifetime (related to CORE-809)
  • Reviewed and merged pull requests #44 and #45
v3 bugfixing:
  • CORE-5329: Database gets partially corrupted in the "no-reserve" mode (debugged and suggested solution to Vlad)
July 2016
 
Built-in replication:
  • Auto-restart replication from the first available segment
  • Fixed late deletion of already replicated segments
  • Resolved issue with stuck replication if more then 2000 archive segments are pending
  • Added verbose logging option (for debugging purposes)
Auto-updated statistics:
  • Initial concepts discussion with Vlad
Other v4 development:
  • Discussed and reviewed pull requests by RedSoft
  • Fixed regression (inifinite loop) in the optimizer related to the cross joins handling
v3 bugfixing:
  • CORE-5307: Random 'invalid transaction handle' errors are returned from the engine
  • CORE-5246: String truncation error while selecting from MON$ tables if some user-defined context variable exceeds 255 bytes in length
  • Postfix for CORE-5277: zero-initialize strings allocated for (? IS NULL) parameters to avoid garbage being read while validating the length
  • Fixed server crash after Adriano's commit (transient bug)
Generic bugfixing (all versions):
  • CORE-5236: IN/ANY/ALL predicates may cause sub-optimal (late filtering) execution of joins
June 2016
 
Built-in replication:
  • Fixed permission issue for journal segments (Linux only)
  • Changed the control file format, partial implementation of the safe journal replay
  • Fixed lockups when the journal directory does not exist
  • Completed porting the existing replication code to the v3/v4 codebase
Other v4 development:
  • Bumped ODS version to 13.0, adjusted the engine libary name and other dependencies
  • Reviewed and merged pull requests #29, #35, #38
v3 bugfixing:
  • CORE-5268: Nested OR conditions may lead to incorrest results
  • CORE-5154: Services API don't work with non-ascii database names (ported from aafemt/firebird)
Generic bugfixing (all versions):
  • CORE-5275: Expression index may become inconsistent if CREATE INDEX was interrupted after b-tree creation but before commiting
 
Dmitry Yemanov
Penza, Russia