Firebird Documentation IndexFirebird 2.1 Release NotesGlobal Improvements in Firebird 2.1 → Other Global Improvements
Firebird Home Firebird Home Prev: Configuration and TuningFirebird Documentation IndexUp: Global Improvements in Firebird 2.1Next: Data Definition Language (DDL)

Other Global Improvements

Garbage Collector Rationalisation
Immediate Release of External Files
Synchronization of DSQL metadata cache objects in Classic server
BLOB Improvements
Type Flag for Stored Procedures
Help for Getting Core Dumps on Linux

Garbage Collector Rationalisation

V. Khorsun

Feature request CORE-1071

The background garbage collector process was reading all back versions of records on a page, including those created by active transactions. Since back versions of active records cannot be considered for garbage collection, it was wasteful to read them.

Immediate Release of External Files

V. Khorsun

Feature request CORE- 961

The engine will now release external table files as soon as they are no longer in use by user requests.

Synchronization of DSQL metadata cache objects in Classic server

A. dos Santos Fernandes

Feature request CORE-976

No details.

BLOB Improvements

A. dos Santos Fernandes

Feature request CORE-1169

Conversion of temporary blobs to the destination blob type now occurs when materializing.

Type Flag for Stored Procedures

D. Yemanov

Feature request CORE-779

Introduced a type flag for stored procedures, adding column RDB$PROCEDURE_TYPE to the table RDB$PROCEDURES. Possible values are:

- 0 or NULL -

legacy procedure (no validation checks are performed)

- 1 -

selectable procedure (one that contains a SUSPEND statement)

- 2 -

executable procedure (no SUSPEND statement, cannot be selected from)

Help for Getting Core Dumps on Linux

A. Peshkov

Feature request CORE-1558

The configuration parameter BugcheckAbort provides the capability to make the server stop trying to continue operation after a bugcheck and instead, to call abort() immediately and dump a core file. Since a bugcheck usually occurs as a result of a problem the server does not recognise, continuing operation with an unresolved problem is not usually possible anyway, and the core dump can provide useful debug information.

In the more recent Linux distributions the default setups no longer dump core automatically when an application crashes. Users often have troubles trying to get them working. Differing rules for Classic and Superserver, combined with a lack of consistency between the OS setup tools from distro to distro, make it difficult to help out with any useful “general rule”.

Code has been added for Classic and Superserver on Linux to bypass these problems and automate generation of a core dump file when an abort() on BUGCHECK occurs. The Firebird server will make the required 'cwd' (change working directory) to an appropriate writable location (/tmp) and set the core file size limit so that the 'soft' limit equals the 'hard' limit.

Note

In a release version, the automated core-dumping is active only when the BugcheckAbort parameter in firebird.conf is set to true (1). In a debug version, it is always active.

If you need to enable the facility, don't forget that the server needs to be restarted to activate a parameter change.

Prev: Configuration and TuningFirebird Documentation IndexUp: Global Improvements in Firebird 2.1Next: Data Definition Language (DDL)
Firebird Documentation IndexFirebird 2.1 Release NotesGlobal Improvements in Firebird 2.1 → Other Global Improvements