Last updated: August 2024
This document states the current development activities of the project and establishes the estimated release schedule for the foreseeable future. It gets periodically updated in order to be in line with the reality.
Release Series | Next Version | Schedule | Useful Links |
v5.0 (since 2024) | 5.0.2 | Q1 2025 | Changes | Snapshot Builds |
v4.0 (since 2021) | 4.0.6 | Q1 2025 | Changes | Snapshot Builds |
v3.0 (since 2016) | 3.0.13 | Q1 2025 | Changes | Snapshot Builds |
Below are the features that are considered desirable and (hopefully) doable during the next few years. Those finished before the Beta stage will be included into the Firebird 6.0 release.
Tracker # | Feature / Improvement | Developer(s) | Status |
Major features | |||
#5431 | SQL-compliant JSON functions | Artyom Abakumov | PENDING PR |
#1055 | Support for tablespaces | Roman Simakov, Ilya Eremin |
PENDING PR |
#7954 | Shared metadata cache | Alex Peshkov | IN PROGRESS |
#1115, #3031 | SQL-standard compliant ROW data type | Aleksey Mochalov | IN PROGRESS |
#1113 | Support for SQL schemas | Adriano dos Santos Fernandes | IN PROGRESS |
Minor features and improvements | |||
#7868 | Feature SET AUTOTERM in ISQL | Adriano dos Santos Fernandes | COMPLETED |
#7748 | Allow collation to be a part of data type | Dimitry Sibiryakov | COMPLETED |
#7744 | ALTER ... {SQL SECURITY {DEFINER | INVOKER} | DROP SQL SECURITY} | Alexander Zhdanov | COMPLETED |
#7718 | Allow to create database with different owner | Dimitry Sibiryakov | COMPLETED |
#7675 | EXPLAIN statement and RDB$SQL package | Adriano dos Santos Fernandes | COMPLETED |
#7617 | SQL:2023 ANY_VALUE aggregate function | Adriano dos Santos Fernandes | COMPLETED |
#7590 | Improve DECLARE VARIABLE to accept complete value expressions | Adriano dos Santos Fernandes | COMPLETED |
#7587 | CALL statement | Adriano dos Santos Fernandes | COMPLETED |
#7586 | Named arguments for function call, EXECUTE PROCEDURE and procedure record source | Adriano dos Santos Fernandes | COMPLETED |
#7566 | Allow DEFAULT keyword in argument list | Adriano dos Santos Fernandes | COMPLETED |
#7427 | ALTER FUNCTION ... {DETERMINISTIC | NOT DETERMINISTIC} | Alexander Zhdanov | COMPLETED |
#4203 | DROP [IF EXISTS] statement | Adriano dos Santos Fernandes | COMPLETED |
#2388 | SQL standard FORMAT clause for CAST between string types and datetime types | Artyom Ivanov | COMPLETED |
#7709 | Recursive plan output for queries involving selectable stored procedures | Dmitry Yemanov | IN REVIEW |
#7580 | Trace failed attaches |
Artyom Abakumov, |
IN PROGRESS |
#7110 | Add CSV support for external tables | Dmitry Starodubov, Ilya Eremin |
PENDING PR |
#1118 | Job/task scheduler | Ilya Eremin | PENDING PR |
n/a | GREATEST and LEAST functions (SQL:2023 T054) | Aleksey Chudaykin | PENDING PR |
n/a | Optional string types maximum length (SQL:2023 T081) | Alexander Zhdanov | PENDING PR |
n/a | Underscores in numeric literals (SQL:2023 T662) | Aleksey Chudaykin | PENDING PR |
n/a | Support for user-defined messages in the trace | Dmitry Starodubov | PENDING PR |
n/a | Parallel statistics collection (GSTAT) | Aleksey Mochalov | PENDING PR |
#7332 | Remove/increase the record size limit | Dmitry Yemanov | IN PROGRESS |
#8005 | UNLIST function to decode separated values list into a record set | Aleksey Chudaykin | IN PROGRESS |
#2892 | TRUNCATE statement | Dmitry Yemanov | IN PROGRESS |
#1036 | Package-level constants | Artyom Abakumov | IN PROGRESS |
n/a | Non-decimal integer literals (SQL:2023 T661) | Aleksey Chudaykin | IN PROGRESS |
#7973 | Create iOS embedded build | Alex Peshkov | PLANNING |
#7967 | Implement a way to build an index without blocking concurrent data modifications | Vlad Khorsun | PLANNING |
#7964, #7258 | Make FOREIGN KEY constraint to use any suitable index | Vlad Khorsun | PLANNING |
#5120 | Hash/merge algorithms for outer joins | Dmitry Yemanov | PLANNING |
#3138 | Referential integrity without index | Vlad Khorsun | PLANNING |
#2629 | Ability to specify length for index segments to be indexed on char-based columns | Vlad Khorsun | PLANNING |
#2111 | Support value distribution histograms | Dmitry Yemanov | PLANNING |
#1503 | Stored optimizer statistics | Dmitry Yemanov, Vlad Khorsun |
PLANNING |
#1195 | Remove context limit for stored procedures/functions/triggers as well as for user SQL queries | Dmitry Yemanov | PLANNING |
#1095 | Local temporary tables | Adriano dos Santos Fernandes | PLANNING |
n/a | Multi-source replication | Dmitry Yemanov | PLANNING |