FirebirdSQL logo

Thank you for choosing Firebird 5.0.We cordially invite you to test it hard against your expectations and engage with us in identifying and fixing any bugs you might encounter.

ODS (On-Disk Structure) 13.1 is introduced.It’s a minor ODS upgrade, so databases in ODS 13.0 (created by Firebird 4.0) may still be opened with a Firebird 5.0 server (with some new features being unavailable), but databases in older ODS cannot be opened.

Note

Databases created in pre-release builds of Firebird 5.0 may be inaccessible in the 5.0.0 final release and higher and have to be recreated.The ODS was changed a few times during the development cycle and the Firebird Project generally does not guarantee ODS being stable before the Beta stage.

In addition, 5.0.0 RC1 had an ODS change affecting the profiler, specifically with nullability and default values of its procedures and functions.If you intend to use (or have already used) the profiler, it is advisable to recreate the database.

Also, if you used the profiler in a pre-RC1 build, and don’t intend to recreate the database, you will need to drop the tables and views prefixed with PLG$PROF due to changes in these tables (which are not considered part of the ODS).The next use of the profiler will recreate these tables and views.

The engine library is still named engine13.dll (Windows) and libEngine13.so (POSIX).The security database is named security5.fdb.Binaries layout and configuration are unchanged from Firebird 4.

Note

That said, you can copy the Firebird engine library from the Firebird 3.0 distribution package (named engine12.dll (Windows) and libEngine12.so (POSIX), and located inside the /plugins sub-directory) to continue working with databases in ODS 12 without needing a backup/restore.However, new features introduced with Firebird 4.0 and Firebird 5.0 will not be accessible.

Compatibility with Older Versions

Known incompatibilities are detailed in the Compatibility Issues chapter.

docnext count = 4

Sub-release V.5.0.1

Bugs reported and fixed prior to the version 5.0.1 release are listed HERE.

V.5.0.1 Improvements

#8181 — Ensure the standalone CS listener on Linux uses the SO_REUSEADDR socket option

Implemented by Dmitry Yemanov


#8165 — Added shutdown handler for Classic Server

Implemented by Alexander Peshkov, Alexander


#8104 — More efficient evaluation of expressions like RDB$DB_KEY <= ? after mass delete

Implemented by Vlad Khorsun


#8066 — Make protocol schemes case-insensitive

Implemented by Vlad Khorsun


#8061 — Unnest IN/ANY/EXISTS sub-queries and optimize them using semi-join algorithm

See also the configuration parameter SubQueryConversion.

Implemented by Dmitry Yemanov


#8042 — Improve conflict resolution on replica when table has both primary and unique keys

Implemented by Vlad Khorsun


#8030 — Better cardinality estimation when empty data pages exist

Implemented by Vlad Khorsun


#8010 — Remove gfix -cache option

Implemented by Vlad Khorsun


#7978 — Update Windows distributions with zlib version 1.3.1

Implemented by Vlad Khorsun


#7928 —  Make TempCacheLimit setting to be per-database (not per-attachment) for SuperClassic

Implemented by Vlad Khorsun


Bug Reporting

Bugs fixed in this release are listed and described in the chapter entitled Bugs Fixed.

  • If you think you have discovered a new bug in this release, please make a point of reading the instructions for bug reporting in the article How to Report Bugs Effectively, at the Firebird Project website.

  • If you think a bug fix has not worked, or has caused a regression, please locate the original bug report in the Tracker, reopen it if necessary, and follow the instructions below.

Follow these guidelines as you attempt to analyse your bug:

  1. Write detailed bug reports, supplying the exact build number of your Firebird kit.Also provide details of the OS platform.

  2. Include reproducible test data in your report and post it to our Tracker.

Documentation

You will find all the README documents referred to in these notes — as well as many others not referred to — in the doc subdirectory of your Firebird 5.0 installation.

 — The Firebird Project