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
November 2014 to January 2015
 
January 2015
 
New development:
  • Core (engine-level) support for scrollable DSQL cursors
  • Make xnet://db connection strings usable with forward slashes
  • Unified port numbers / protocol names syntax (thus allowing custom ports in inet://host:port/db connection strings)
  • Slightly refactored the BLR parser routines in the remote provider
Bugfixing:
  • CORE-4676: Crash on unexpected client disconnection with opened transaction
  • CORE-4675: Conditions like WHERE = . don't use existing index
  • CORE-4673: Computed index based on a computed column stores NULL for all its keys
  • CORE-4670: Constraint violation error may be swallowed in some cases
  • CORE-4668: Select from mon$table_stats doesn`t work on SC and CS
  • CORE-4665: Wrong result when use "where STARTING WITH <:value> ORDER BY ' and field_C is leading part of compound index key: { field_C, field_N }
  • CORE-4558: SuperServer dies when client is disconnected abnormally during the index navigational scan
  • CORE-4075: Server bugchecks or crashes on exception in calculated index
December 2014
 
New development:
  • Cleaned up the API from the legacy crap (parser version and SQL dialect trickery)
  • Refactored the RPB flags and slightly updated the record refetch logic
Bugfixing:
  • CORE-4639: Linux server may reject connections with a transliteration error
  • CORE-4634: ORDER BY via an index + WHERE clause: error "no current record for fetch operation"
  • CORE-4631: Lock manager "out of room" error hides the real cause of this problem
  • CORE-4622: Regression: Trigger with UPDATE OR INSERT statement and IIF() not working as expected
  • CORE-4572: Incorrect error for PSQL function when the number of actual arguments does not match the number of formal arguments
  • CORE-4539: Server does not accept the right plan
  • CORE-4472: Message "Modifying function which is currently in use" when running script with AUTODDL=OFF and is called from INTERNAL function declared in other unit
  • CORE-4384: Problems when a table grows beyond 65535 pointer pages
  • CORE-4280: FB3: Stored function accepts duplicate input arguments
  • CORE-4161: User can not insert records into table with column "generated by default as identity" in its DDL
  • CORE-3305: "BLOB not found" error after creation/altering of the invalid trigger (postfix)
  • CORE-1550: Unnecessary index scan happens when the same index is mapped to both WHERE and ORDER BY clauses (postfix)
  • Fixed missing initialization of the output variable in the case of FB_EOF (remote provider)
November 2014
 
New development:
  • Relaxed system tables protection for cases UPDATE ... SET RDB$*_SOURCE = NULL
Bugfixing:
  • CORE-4618: Rollback doesn`t undo changes when MERGE statement updates the same target rows multiple times and PLAN MERGE is used
 
Dmitry Yemanov
Penza, Russia
November 2014 to January 2015
 
January 2015
 
New development:
  • Core (engine-level) support for scrollable DSQL cursors
  • Make xnet://db connection strings usable with forward slashes
  • Unified port numbers / protocol names syntax (thus allowing custom ports in inet://host:port/db connection strings)
  • Slightly refactored the BLR parser routines in the remote provider
Bugfixing:
  • CORE-4676: Crash on unexpected client disconnection with opened transaction
  • CORE-4675: Conditions like WHERE = . don't use existing index
  • CORE-4673: Computed index based on a computed column stores NULL for all its keys
  • CORE-4670: Constraint violation error may be swallowed in some cases
  • CORE-4668: Select from mon$table_stats doesn`t work on SC and CS
  • CORE-4665: Wrong result when use "where STARTING WITH <:value> ORDER BY ' and field_C is leading part of compound index key: { field_C, field_N }
  • CORE-4558: SuperServer dies when client is disconnected abnormally during the index navigational scan
  • CORE-4075: Server bugchecks or crashes on exception in calculated index
December 2014
 
New development:
  • Cleaned up the API from the legacy crap (parser version and SQL dialect trickery)
  • Refactored the RPB flags and slightly updated the record refetch logic
Bugfixing:
  • CORE-4639: Linux server may reject connections with a transliteration error
  • CORE-4634: ORDER BY via an index + WHERE clause: error "no current record for fetch operation"
  • CORE-4631: Lock manager "out of room" error hides the real cause of this problem
  • CORE-4622: Regression: Trigger with UPDATE OR INSERT statement and IIF() not working as expected
  • CORE-4572: Incorrect error for PSQL function when the number of actual arguments does not match the number of formal arguments
  • CORE-4539: Server does not accept the right plan
  • CORE-4472: Message "Modifying function which is currently in use" when running script with AUTODDL=OFF and is called from INTERNAL function declared in other unit
  • CORE-4384: Problems when a table grows beyond 65535 pointer pages
  • CORE-4280: FB3: Stored function accepts duplicate input arguments
  • CORE-4161: User can not insert records into table with column "generated by default as identity" in its DDL
  • CORE-3305: "BLOB not found" error after creation/altering of the invalid trigger (postfix)
  • CORE-1550: Unnecessary index scan happens when the same index is mapped to both WHERE and ORDER BY clauses (postfix)
  • Fixed missing initialization of the output variable in the case of FB_EOF (remote provider)
November 2014
 
New development:
  • Relaxed system tables protection for cases UPDATE ... SET RDB$*_SOURCE = NULL
Bugfixing:
  • CORE-4618: Rollback doesn`t undo changes when MERGE statement updates the same target rows multiple times and PLAN MERGE is used
 
Dmitry Yemanov
Penza, Russia