MariaDB 10.4.0 Release Notes
The most recent release of MariaDB 10.4 is:MariaDB 10.4.34 Stable (GA) Download Now
DownloadRelease NotesChangelogOverview of 10.4
Release date: 9 Nov 2018
MariaDB 10.4 is the current development series of MariaDB. It is an evolution of MariaDB 10.3 with several entirely new features not found anywhere else and with backported and reimplemented features from MySQL.
MariaDB 10.4.0 is an Alpha release.
Do not use alpha releases in production!
For an overview of MariaDB 10.4 see theWhat is MariaDB 10.4? page.
Thanks, and enjoy MariaDB!
Notable Changes
This will be the first alpha release in the MariaDB 10.4 series.
Notable changes of this release include:
InnoDB
Added instant DROP COLUMN and changing of the order of columns (MDEV-15562)
Reduced redo log volume for undo tablespace initialization (MDEV-17138)
Removed crash-upgrade support for pre-10.2.19 TRUNCATE TABLE (MDEV-13564)
Added key rotation for innodb_encrypt_log (MDEV-12041)
Optimizer
Variables
Added the tcp_nodelay system variable (MDEV-16277)
Removed the global Innodb_pages0_read status variable (MDEV-15705).
General
IF NOT EXISTS
clause added to INSTALL PLUGIN andIF EXISTS
clause added to UNINSTALL PLUGIN and UNINSTALL SONAME (MDEV-16294)The obsolete mysql.host table is no longer created (MDEV-15851)
Support of brackets (parentheses) for specifying precedence in UNION/EXCEPT/INTERSECT operations (MDEV-11953)
Crash safe Aria-based system tables (MDEV-16421)
Added Linux abstract socket support (MDEV-15655)
Enabled C++11 (MDEV-16410)
SET PASSWORD support for ed25519 and other authentication plugins (MDEV-12321)
Performance improvements in Unicode collations (MDEV-17534, MDEV-17511, MDEV-17502, MDEV-17474)
User data type plugins (MDEV-4912, in progress)
Improvements with SQL standard INTERVAL support to help functions TIMESTAMP() and ADDTIME() return more predictable results.
Historically, MariaDB uses the TIME data type for both "time of the day" values and "duration" values. In the first meaning the natural value range is from '00:00:00' to '23:59:59.999999', in the second meaning the range is from '-838:59:59.999999' to '+838:59:59.999999'.
To remove this ambiguity and for the SQL standard conformance we plan to introduce a dedicated data type INTERVAL that will be able to store values in the range at least from '-87649415:59:59.999999' to '+87649415:59:59.999999', which will be enough to represent the time difference between TIMESTAMP'0001-01-01 00:00:00' and TIMESTAMP'9999-12-31 23:59:59.999999'.
As a first step we support this range of values for intermediate calculations when TIME-alike string and numeric values are used in INTERVAL (i.e. duration) context, e.g. as the second argument of SQL functions TIMESTAMP(ts,interval) and ADDTIME(ts,interval), so the following can now be calculated:
SELECT ADDTIME(TIMESTAMP'0001-01-01 00:00:00', '87649415:59:59.999999');
-> '9999-12-31 23:59:59.999999'
SELECT TIMESTAMP(DATE'0001-01-01', '87649415:59:59.999999')
-> '9999-12-31 23:59:59.999999'
SELECT ADDTIME(TIME'-838:59:59.999999', '1677:59:59.999998');
-> '838:59:59.999999'
Changelog
For a complete list of changes made in MariaDB 10.4.0, with links to detailed information on each push, see the changelog.
Contributors
For a full list of contributors to MariaDB 10.4.0, see the MariaDB Foundation release announcement.
Do not use alpha releases in production!
This page is licensed: CC BY-SA / Gnu FDL
Last updated
Was this helpful?