Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Release notes for MariaDB Enterprise Server 10.4 series releases
An overview of changes, improvements, and what's new in MariaDB Enterprise Server 10.4
MariaDB Enterprise Server 10.4 introduces the following new features:
MariaDB Enterprise Server uses an enterprise lifecycle that provides optimized builds, predictable release behavior, and vendor support.
enables reliable and predictable schema change behavior.
collects trace data to aid query optimization and diagnosis of query execution issues.
support has been expanded from system-versioned tables to also include application-time period and bitemporal tables.
provides support for auditing resource access to MariaDB Enterprise Server.
enables non-blocking backups of MariaDB Enterprise Server.
With , data is encrypted before writing to the disk and decrypted when read from disk. MariaDB Enterprise Server extends data-at-rest encryption support to include:
Encryption of Spatial indexes
Key rotation when encrypting the InnoDB Redo Log
Encryption of MariaDB Enterprise Cluster's write-set cache (GCache)
MariaDB Enterprise Server includes support for , which incorporates Galera Cluster 4. New features include:
Parallel replication and improved performance when blocks of grouped transactions can be committed without conflict.
The , to eliminate transaction limitations by fragmenting huge transactions for replication.
Rolling upgrades to permit a smooth transition of MariaDB Cluster deployments to Galera 4 functionality by operating as a Galera 3-compatible node until all nodes are Galera 4-compatible.
MariaDB Enterprise Server includes changes to improve data reliability and SQL functionality:
System tables use the Aria storage engine, making them crash-safe.
UNIQUE index support for the BLOB data type.
data type validation.
Parentheses in UNION, INTERSECT, and EXCEPT operations to control order of execution.
MariaDB Enterprise Server features improvements, including:
Ability to reload SSL certificates without server restart.
SET PASSWORD option to specify authentication plugins.
Improved support for authentication plugins, including the ability to set multiple authentication plugins on individual users. Also supported is fallback on internal methods, such as password authentication.
ALTER USER option for account locking, to enable MariaDB Enterprise Server to reject all new connections for an account.
MariaDB Enterprise Server 10.4.34-24 is a maintenance release of . This release includes a variety of fixes.
MariaDB Enterprise Server 10.4.34-24 was released on 2024-06-11.
Galera has been updated to 26.4.18
The GCS protocol version has been changed, preventing a downgrade of individual nodes of a MariaDB Enterprise Cluster
With --gtid-ignore-duplicate set, a transaction can be double-applied from another replication source if applying the transaction from the initial source required retrying in parallel execution. ()
Backups of server with innodb_encrypt_tables=1 can become corrupted in mariadb-backup --prepare ()
Galera-replicated events can, in some cases, contain the wrong time when versioning is used ()
Using current MariaDB Enterprise Backup against an older server can result in a crash, as the system variable @@aria_log_dir_path does not exist ()
For encrypted table spaces, an ALTER operation can hang when an encryption thread works on the same tablespace ()
EXPLAIN statement that uses a subquery which has a query plan that A) will examine less than @@expensive_subquery_limit rows and B) will use the join buffer, could cause a crash. ()
Spider/ODBC passed double quotes for names, in ANSI style ()
Default charset doesn't work with the PHP MySQLi extension ()
Spider returns parsing failure on valid left join select by translating the on expression to () ()
Original IP not shown in network-related error messages when proxy_protocol
Table is getting rebuilt with ALTER TABLE ADD COLUMN, although it should be an instant operation, not requiring a rebuild ()
For the complete list of changes in this release, see the .
In alignment with the , MariaDB Enterprise Server 10.4.34-24 is provided for:
CentOS 7 (x86_64)
Debian 10 (x86_64)
Microsoft Windows (x86_64) (MariaDB Enterprise Cluster excluded)
Red Hat Enterprise Linux 7 (x86_64)
Some of the components of MariaDB Enterprise Server are supported on a subset of platforms. See for details.
Account blocking based on number of failed login attempts.
Ability to set password expiration dates.
Logging of access when passwords are ignored, e.g., for passwordless authentication by UNIX socket.
MariaDB Enterprise Backup fails with the following error message if the prepare step of the backup encounters a data directory, which happens to store wsrep xid position in TRX SYS page: (MDEV-33540)
Incorrect DEFAULT expression evaluated in UPDATE (MDEV-33790)
Rocky Linux 8 (x86_64, ARM64)
SUSE Linux Enterprise Server 12 (x86_64)
SUSE Linux Enterprise Server 15 (x86_64, ARM64)
Ubuntu 20.04 (x86_64, ARM64)
InnoDB: Crash recovery is broken due to insufficient innodb_log_file_sizeThis ninth release of MariaDB Enterprise Server 10.4 is a hotfix release to address a CVE which has been rated "critical" using the criteria defined in the MariaDB Engineering Policy.
MariaDB Enterprise Server 10.4.15-9 was released on 2020-10-07.
CVE (with link)
CVSS base score
#1:
MariaDB CVEs are assigned a word rating instead of a CVSS base score. See the for details.
In alignment with the , MariaDB Enterprise Server 10.4.15-9 is provided for:
Red Hat Enterprise Linux 8
Red Hat Enterprise Linux 7
Red Hat Enterprise Linux 6
CentOS 8
Some components of MariaDB Enterprise Server might not support all platforms. For additional information, see
CentOS 6, Debian 8, and Red Hat Enterprise Linux 6 are no longer supported as per the . Older releases are available from the . Instructions for installation are included as a README file within the download.
This page is: Copyright © 2025 MariaDB. All rights reserved.
This third release of 10.4 is a maintenance release, including a variety of fixes.
MariaDB Enterprise Server 10.4.8-3 was released on 2019-09-30.
plugin sends an error to the client when auditing cannot be started. When reloaded, wrong filter definitions will result in an error, and the old cache filters will be used. ()
CentOS 6
Debian 10
Debian 9
Debian 8
SUSE Linux Enterprise Server 15
SUSE Linux Enterprise Server 12
Ubuntu 20.04
Ubuntu 18.04
Ubuntu 16.04
Microsoft Windows
N/A (Critical)#1
Backup Stages for
Per user filters using system tables
Audit of AUDIT plugin configuration changes
Maximum number of secondary indexes increased to 128 per table
Slow master shutdown option
Data-at-Rest Encryption for transaction logs
Password expiration
Account locking via SQL
Account blocking based on the number of failed connects
based on Galera 4
Streaming replication (huge transactions) for MariaDB Cluster
Support of group commit in the binary log
New causal reads functions
Donor selection based on Incremental State Transfer status
Persistent cluster/group information
Key rotation for REDO log encryption
Encryption for spatial indexes with InnoDB
to reload SSL certificates
Crash-safe system tables based on the Aria storage engine
A new Enterprise config file is provided that sets optimized defaults:
Server does not load plugins of maturity Beta or lower
Authentication plugin is loaded by default
Account root is using by default on Linux systems
Accounts for root can only connect from the local host
Accounts of type anonymous-user removed
Database "test" has no default grants
plugin is activated by default with settings:
Audit plugin is loaded by default, but is not activated
plugin is loaded by default on Linux systems
Engine independent table statistics are enabled by default
Histograms collected by default
optimize_join_buffer_size=on by default
JSON validation by default for type fields
is now plugin-agnostic
plugin, used by MariaDB MaxScale, is now of maturity stable
Access to data provided by the plugin via the information schema requires the privilege
Unsupported Community plugins are not loaded by default
Embedded Server removed
HeidiSQL is not included in Windows installations
MariaDB Server is now statically linked with the bundled wolfSSL library in MSI and ZIP packages on Windows, as well as in .deb packages provided by Debian's and Ubuntu's default repositories
MariaDB Named Commands
In alignment with the enterprise lifecycle, MariaDB Enterprise Server 10.4.6-1 is provided for:
CentOS 7
CentOS 6
Debian 9
Debian 8
Red Hat Enterprise Linux 7
Red Hat Enterprise Linux 6
Ubuntu 18.04
Ubuntu 16.04
Microsoft Windows
Some components of MariaDB Enterprise Server might not support all platforms. For additional information, see "MariaDB Corporation Engineering Policies.
CentOS 6, Debian 8, and Red Hat Enterprise Linux 6 are no longer supported as per the MariaDB Engineering Policy. Older releases are available from the MariaDB Downloads page. Instructions for installation are included as a README file within the download.
Due to a race condition in InnoDB, an exclusive lock to an inserted record could be wrongly granted to multiple transactions when the transaction commits. This could lead to a server crash or data loss. (MDEV-15326)
INSERT...ON DUPLICATE KEY UPDATE, when there is more than one key, could result in inconsistent data between master and slave for replication mode and . This has been fixed for MIXED but cannot be controlled by the replication for based replication.
Inconsistent Slaves need to be set up again from the Master. (MDEV-17614)
Wrong value on instantly added column can occur after and a following of the PRIMARY KEY. ()
INSTANT DROP COLUMN on an indexed column can result in a crash or data corruption. ()
Replication could hang for transactions, as has its own concurrency control, innodb_thread_concurrency. (MDEV-20247)
Fix potential crash in ON UPDATE CASCADE when the foreign table is . (MDEV-20311)
After setting , it is possible to drop indexes from referenced (parent) tables, which could cause to behave as if the table doesn't exist in the engine. (MDEV-17187)
Fix for a corner case where could fail because encrypted data files could not be copied if created shortly before the backup was started. (MDEV-18128)
could fail in the prepare phase if the redo log is bigger than 512GB. (MDEV-20060)
If the user enables encryption for the temporary table and uses the full_crc32 format, then the temp table read may give an error. ()
Optimized scanning of the undo log versions while scanning the secondary index versions. (MDEV-20301)
Improved performance for and crash recovery, and the write performance. (MENT-139)
system variable was added.
command-line option added.
In alignment with the enterprise lifecycle, MariaDB Enterprise Server 10.4.8-3 is provided for:
CentOS 8
CentOS 7
CentOS 6
Debian 10
Debian 9
Debian 8
Red Hat Enterprise Linux 8
Red Hat Enterprise Linux 7
Red Hat Enterprise Linux 6
Ubuntu 18.04
Ubuntu 16.04
Microsoft Windows
Some components of MariaDB Enterprise Server might not support all platforms. For additional information, see "MariaDB Corporation Engineering Policies.
CentOS 6, Debian 8, and Red Hat Enterprise Linux 6 are no longer supported as per the "MariaDB Corporation Engineering Policies".
MariaDB Engineering Policy]]. Older releases are available from the . Instructions for installation are included as a README file within the download.
This fourth release of MariaDB Enterprise Server 10.4 is a maintenance release, including a variety of fixes.
MariaDB Enterprise Server 10.4.10-4 was released on 2019-11-18.
CVE (with link)
CVSS base score
New option innodb_change_buffer_dump added to Debug builds. This option dumps the contents of the change buffer to the server error log at startup. This is useful when a slow shutdown cannot be performed successfully. ()
Eliminated unnecessary logging of warnings to the error log regarding maximum row size for DML statements which should be present only for DDL operations. (MENT-454)
Improved [[]] error logging to explain that GCache recovery is not possible when GCache encryption is enabled. (MENT-373)
... could overwrite binary logs if certain conditions were present. () Conditions which must be present to trigger this bug:
is executed on the MariaDB Server host, and
Configuration files from the master are used, and
Configuration files enable binary logging
If unable to upgrade to MariaDB Enterprise Server 10.4.10-4, where this bug is fixed, a workaround is available: use the --defaults option to to avoid the bug-triggering conditions by specifying a different configuration file.
Prior removal of a FULLTEXT index from an table can cause a hang on startup. ()
Removal of a FULLTEXT index from an table can cause a hang. ()
Change to a table containing a FULLTEXT index can cause Server to become unresponsive. ()
Unnecessary logging of warnings to the error log regarding maximum row size for DML statements which should be present only for DDL operations. (MENT-454)
After server restart, a using a FULLTEXT index on tables can fail to return some data. ()
and MariaDB Backup, when using mbstream, recreated xtrabackup_info in the same directory as the backup file. Repeated extract of the backup could fail. (
Installing MariaDB Enterprise Server from repository failed on CentOS 7 due to package dependencies. (MENT-420)
WARN_INNODB_PARTITION_OPTION_IGNORED error code added
In alignment with the , MariaDB Enterprise Server 10.4.10-4 is provided for:
CentOS 8
CentOS 7
CentOS 6
Debian 10
Some components of MariaDB Enterprise Server might not support all platforms. For additional information, see "".
CentOS 6, Debian 8, and Red Hat Enterprise Linux 6 are no longer supported as per the . Older releases are available from the . Instructions for installation are included as a README file within the download.
This page is: Copyright © 2025 MariaDB. All rights reserved.
This fifth release of MariaDB Enterprise Server 10.4 is a maintenance release, including a variety of fixes.
MariaDB Enterprise Server 10.4.11-5 was released on 2020-01-06.
no longer sends unnecessary warnings to the error log about maximum row size for DDL statements when and (MDEV-20832)
Redundant writes to the redo log have been removed. ()
The default for the plugin load option plugin-maturity is now stable (MENT-240)
and the MariaDB Audit plugin trace now add the user who initiated statements with the DELAYED option. In previous versions a system user was added. (MENT-237)
MariaDB ColumnStore, a columnar storage engine, is now included with MariaDB Enterprise Server 10.4. Specific details on this component may be found in the .
no longer permits to be set to SYSLOG on Microsoft Windows. (MENT-258)
A table could not be loaded after an instant ALTER ... ADD COLUMN or ALTER ... DROP COLUMN, if the primary key is a CHAR column with variable-length encoding like UTF8 ()
In rare conditions commits could be applied in the wrong order if the replica is running in optimistic mode. ()
Primary (master) could crash when it executes and a replica (slave) reconnects having reset its connection status with the primary (e.g., CHANGE MASTER TO MASTER_USE_GTID = slave_pos). (MENT-19376)
"Out of memory" error could occur when accessing partitioned tables. ()
A crash could occur when ADD PRIMARY KEY was executed by a connection just after another connection issued an instant ADD COLUMN
Client received error SEC_E_INVALID_TOKEN when SSL is used and connecting to MariaDB Enterprise Server running on Microsoft Windows. ()
The restore of tables was not always possible if MariaDB Backup was using the parameters --incremental ()
An incomplete result set was returned when was too small. ()
Interface Changes
None.
In alignment with the , MariaDB Enterprise Server 10.4.11-5 is provided for:
Red Hat Enterprise Linux 8
Red Hat Enterprise Linux 7
Red Hat Enterprise Linux 6
CentOS 8
Some components of MariaDB Enterprise Server might not support all platforms. For additional information, see "".
CentOS 6, Debian 8, and Red Hat Enterprise Linux 6 are no longer supported as per the . Older releases are available from the . Instructions for installation are included as a README file within the download.
This page is: Copyright © 2025 MariaDB. All rights reserved.
Removal of a virtual column used by an index can result in a crash. (MENT-434)
, , or on an table can cause Server to become unresponsive. (MDEV-20852)
INSTANT ADD COLUMN on an table which includes a OREIGN KEY definition can result in a crash. (MENT-435)
INSTANT column DROP or column reorder can result in a crash. Server restart can also crash unless is set to E2E or greater. (MDEV-20117)
mysqld_multi.sh script could not be launched and returned a syntax error. (MENT-433)
Though not supported on Microsoft Windows, the system variable for the Audit plugin accepted a SYSLOG value. (MDEV-19851)
FOREIGN KEY constraints have been ignored during when parent table is System-Versioned. (MDEV-16210)
from child table with FOREIGN KEY was not possible when the table is System-Versioned. (MDEV-20812)
MariaDB Enterprise Cluster cannot perform GCache recovery when GCache encryption is enabled, but no warning was sent to the error log. (MENT-373)
Debian 8
Red Hat Enterprise Linux 8
Red Hat Enterprise Linux 7
Red Hat Enterprise Linux 6
SUSE Linux Enterprise Server 15
SUSE Linux Enterprise Server 12
Ubuntu 18.04
Ubuntu 16.04
Microsoft Windows
6.5
6.5
4.4
A crash could occur when rowid filtering optimization is enabled using (MDEV-20407)
A query with system versioning filters did not show an error when executed on not . (MDEV-18929)
erroneously reported error "Found a misplaced row" for with history partition. (MDEV-21011)
An instant operation could fail when adding a column and changing the collation on a non-indexed column. (MDEV-20190)
CentOS 6
Ubuntu 18.04
Ubuntu 16.04
Debian 10
Debian 9
Debian 8
SUSE Linux Enterprise Server 15
SUSE Linux Enterprise Server 12
Microsoft Windows
Output for the function has been optimized to reduce the number of lines needed. (MDEV-19160)
For compatibility, has been added as an alias to JSON_DETAILED(). (MDEV-19160)
This release incorporates Galera library version 26.4.14
When executing a DELETE or UPDATE with a subselect, the server can crash. (MDEV-10087)
When performing an incremental backup, MariaDB Enterprise Backup does not reflect databases that have been dropped and recreated. (MDEV-23335)
When DELETE HISTORY is executed for a system versioned table with a full-text index, the server can crash. (MDEV-25004)
When an ALTER TABLE statement causes InnoDB to rebuild a table with a spatial index, the server can crash. (MDEV-29856)
When using SPIDER with SPIDER_DIRECT_SQL and spider_udf_ds_use_real_table=1, the server can crash. ()
When executing REPLACE INTO ... PARTITION(...), the server can crash. ()
Galera SST doesn't properly handle undo* files from InnoDB. As a result, SST may terminate incorrectly when --innodb-undo-tablespaces is set to 3 or more. ()
With a query containing nested WINDOW clauses, the server can crash. ()
When executing a SELECT from a complex view with a WHERE clause and with the setting derived_merge=on, the server can crash. ()
Infinite sequence of recursive calls when processing embedded CTE, when such a reference has the same table name as the name of the CTE. ()
A deadlock between InnoDB statistics updates and BLOB insert can result in a server hang. ()
GET_LOCK() / RELEASE_LOCK() calls are not rejected by MariaDB Enterprise Cluster. ()
With a cluster-wide conflict, MariaDB Enterprise Cluster can hang if a binlog purging is running (such as in the case that binlog expiration is configured). ()
mariadbd hangs when running with --wsrep-recover and --plugin-load-add=ha_spider.so options. ()
log_query_not_using_indexes=OFF is ignored when log_slow_filter is an empty string. (MDEV-21187)
MariaDB Enterprise Backup returns with an error when the option --galera-info is used for creating a backup of a MariaDB Server instance, which is not a MariaDB Enterprise Cluster node. Failed to get master wsrep state from SHOW STATUS (MDEV-30293)
When querying a table with virtual generated columns using full text search, these columns are not generated and are always NULL in the result set. ()
Identifiers are not quoted for the output of SHOW GRANTS. Using the result to execute the grant statement results in a syntax error if reserved keywords are used. ()
Spider table with CHARSET utf32/utf16/ucs2 tries to set client CHARSET to unsupported value. ()
Incorrect results are returned when using STDDEV_SAMP() with a view. ()
A spurious error can be generated: ERROR 1292 (22007) at line 15: Truncated incorrect DECIMAL value:
When running mariadb-binlog using the option --verbose, cannot read row events with compressed columns: Error: Don't know how to handle column type:... (MDEV-25277)
Incorrect results are returned with outer join, merged derived table, and view. (MDEV-28602)
Some DDL, such as ANALYZE, can be completed out of order on parallel replicas. (MDEV-30323)
seconds_behind_master is incorrect for delayed parallel replicas. ()
APT reports the message:
dpkg: warning: downgrading galera-4 from 26.4.12-buster to 26.4.12-bullseye ([MDEV-29392](https://jira.mariadb.org/browse/MDEV-29392))
function added.
In alignment with the enterprise lifecycle, MariaDB Enterprise Server 10.4.28-19 is provided for:
CentOS 7 (x86_64)
Debian 10 (x86_64, ARM64)
Microsoft Windows (x86_64) (MariaDB Enterprise Cluster excluded)
Red Hat Enterprise Linux 7 (x86_64)
Red Hat Enterprise Linux 8 (x86_64, ARM64)
Rocky Linux 8 (x86_64, ARM64 Red Hat Enterprise Linux 8 packages)
SUSE Linux Enterprise Server 12 (x86_64)
SUSE Linux Enterprise Server 15 (x86_64, ARM64)
Ubuntu 20.04 (x86_64, ARM64)
Some components of MariaDB Enterprise Server might not support all platforms. For additional information, see MariaDB Corporation Engineering Policies.
BLOB corruption on UPDATE of PRIMARY KEY with FOREIGN KEY (MDEV-31441)
Corrupted table after instant ADD COLUMN failed due to attempting to exceed the maximum record length (MDEV-18322)
ALTER command, before entering TOI, tries to collect foreign keys of a table. For this it opens the main table with SHARED_HIGH_PRIO MDL lock which disregards any waiting queued lock requests. If there is a DML operation running on the same table, and a real TOI operation as well, this TOI operation tries to BF-abort DML operation. At the same time, because ALTER is not yet TOI, and it runs with HIGH_PRIO MDL lock, it disregards waiting TOI operation, and gets the lock and immediately gets BF-aborted either by TOI directly or by aborted DML operation. Since there is no wsrep transaction for ALTER, it gets BF-aborted by setting killed state for the tread. But before entering TOI, ALTER doesn't check killed state, so it replicates, and applies on the other nodes successfully, but then it rolls back on the local node, causing inconsistency ()
Crash while trying to complain "unsupported meta-data version" on ALTER TABLE...IMPORT TABLESPACE with MySQL 8.0 files (MDEV-29972)
Wrong table attribute PAGE_COMPRESSED=1 shown for tables in the InnoDB system tablespace (MDEV-31000)
MariaDB crashes with foreign_key_checks=0 when changing a column and adding a foreign key at the same time (MDEV-32638)
Sometimes node has been dropped from the cluster on startup Shutdown with async replica () with diagnostics like:
and
GTIDs may diverge in Galera cluster after CREATE TABLE AS (MDEV-27806)
This can subsequently lead to diagnostics like:
and node crash:
SHOW SLAVE STATUS can deadlock an errored replica when a parallel replica worker gets killed at about when SHOW is issued (MDEV-10653)
When executing SELECT BINLOG_GTID_POS(@binlog_file...) with the user variable being NULL, the server can crash (MDEV-33045)
A Query that uses a specific SQL construct can cause a server crash. The construct is an equality comparison of table-less row subquery and a subquery that has a UNION operation at the top level: (SELECT 'foo', 'bar') = (SELECT col1, col2 FROM t1 ... UNION ...) ()
A DELETE with ORDER BY and semijoin optimization can cause a crash ()
Possible crash when lateral derived in a query is guaranteed to return no rows ()
When using EXCHANGE PARTITION to replace a partition with a table, the server can crash if the to be exchanged table is using a virtual column which is not matching the partitioning key ()
When using INSERT DELAYED with a table using virtual columns, the server can crash ()
When using SELECT from a derived table with using AS OF, the server can crash ()
When using JSON_CONTAINS_PATH in a comparison in a prepared statement, the server can crash on execution of the statement ()
Server hangs on DROP DATABASE after a failing LOCK TABLES on Spider table : ()
When using two temporary tables in OPTIMIZE TABLE, executed as a prepared statement, the server can crash ()
When calling SP invoking another SP with a parameter requiring a type conversion, the server can crash ()
SHOW WARNINGS can show wrong foreign key related warnings/errors from an earlier transaction for InnoDB (MDEV-32833)
LeakSanitizer errors in mem_heap_create_block_func upon query from I_S.INNODB_SYS_TABLES with LIMIT ROWS EXAMINED (MDEV-32890)
Query from I_S.INNODB_SYS_INDEXES exceeding LIMIT ROWS EXAMINED causes ER_UNKNOWN_ERROR and LeakSanitizer errors in rec_copy_prefix_to_buf_old ()
Unexpected ER_ERROR_ON_RENAME upon DROP non-existing FOREIGN KEY with ALGORITHM=COPY ()
FOREIGN_KEY_CHECKS does not prevent non-copy alter from creating invalid FK structure ()
Secondary indexes on VARCHAR columns may be corrupted when the VARCHAR is extended so much that a column prefix index must be used ()
Spider: Valid LEFT JOIN results in ERROR 1064 ()
Syntax error upon query with subquery from Spider table ()
Spider doesn't recognize SEMI-JOIN ()
wsrep_provider_options can be truncated on deep and long directory paths with diagnostics like: "Warning 1265 Data truncated for column 'VARIABLE_VALUE' at row 1" in the server log ()
Mariadb-dump option --delete-master-logs is ignored ()
multi source replication filters breaking GTID semantic ()
wsrep_gtid_domain_id is ignored on any node other than bootstrapped node when the wsrep_gtid_mode is set to ON ()
A connection can control RAND() in following connection if used in conjunction with set rand_seed1, rand_seed2 ()
mariadb-upgrade does not remove mysql.plugin entries for plugins that became bundled. Error message "[ERROR] mariadbd: Plugin 'unix_socket' is already installed." is shown when upgrading ()
TaskMax not set to infinity in the MariaDB systemd unit, therefor a lower number than defined in max_connections might be possible for the number of connections ()
If storage engine Spider is loaded upon server startup, Spider related system, and status variables are not available (MENT-2043)
Regular expressions cannot be used in queries on tables of type SPIDER ()
MariaDB Enterprise Backup sometimes shows the error Can't open shared library '/file_key_management.so' (errno: 2, cannot open shared object file: No such file, or directory) when the option --target-dir is not used with --prepare ()
The database part is not case sensitive in Stored Procedure names. This can lead to using the wrong stored procedure, if the same database name is used as lower, and uppercase. ()
CREATE UNIQUE INDEX can fail with an incorrect "ERROR 1286 (42000): Unknown storage engine 'partition'" ()
After successful connection, server sets SERVER_STATUS_AUTOCOMMIT in server_status in the OK packet although the global variable autocommit=0 is set ()
In some cases it is possible to create a Spider table which is referencing to a table on the same instance although spider_same_server_link=0 is set ()
Spider fails to auto-discover a table structure with ERROR 12500 (HY000): unknown ()
REGEXP_REPLACE treats empty strings different than REPLACE in ORACLE mode ()
The Enterprise Audit Plugin does not always report the user name (MENT-2035)
An ALTER using ALGORITHM=INPLACE or adding new indexes can increase the table space file size (MDEV-26740)
Operations that involve extending InnoDB files can be extremely slow when the data directory resides on an NFS server that uses a smaller block size than 4096 bytes (MDEV-32268)
In alignment to the enterprise lifecycle, MariaDB Enterprise Server 10.4.33-23 is provided for:
CentOS 7 (x86_64)
Debian 10 (x86_64, ARM64)
Microsoft Windows (x86_64) (MariaDB Enterprise Cluster excluded)
Red Hat Enterprise Linux 7 (x86_64)
Red Hat Enterprise Linux 8 (x86_64, ARM64)
Rocky Linux 8 (x86_64, ARM64)
SUSE Linux Enterprise Server 12 (x86_64)
SUSE Linux Enterprise Server 15 (x86_64, ARM64)
Ubuntu 20.04 (x86_64, ARM64)
Some components of MariaDB Enterprise Server are supported on a subset of platforms. See MariaDB Engineering Policies for details.
7.5
6.5
5.5
5.5
Galera updated to 26.4.10
no longer enables pushdown of UDFs and Stored Functions to the Data Node by default: (MDEV-26545)
The default value of has changed from -1 to 0
In previous releases, Enterprise Spider pushed UDFs and Stored Functions down to the Data Node by default, which could cause query results to be inconsistent.
Starting with this release, all UDFs and stored functions are evaluated on the Spider Node by default. If desired, pushdown of UDFs and Stored Functions can be explicitly enabled by setting . Testing is recommended to confirm that query results are consistent.
provide descriptions of each column in the COMMENT column option. ()
A new system variable has been added. It is required by for the replication of the MariaDB Global Transaction ID to other nodes in the cluster (MENT-932)
MariaDB Enterprise Cluster, powered by Galera, can crash on INSERT if the table does not have a primary key and if the data for a field exceeds 4096 bytes. (MDEV-24978)
When an InnoDB tablespace (.ibd) file is imported using ALTER TABLE .. IMPORT TABLESPACE without a corresponding .cfg file, InnoDB causes a server crash. (MDEV-26131, MDEV-20931)
When (or ) is executed against an InnoDB table with a FULLTEXT index, InnoDB can cause a server crash. (, MENT-1198)
Resolving aggregate functions that are used in a view can cause in a crash. ()
Executing under can cause in a crash. ()
If two InnoDB tables have a and an operation cascades from the parent table to the child table, an index on a virtual generated column in the child table can become corrupt. ()
, powered by Galera, crashes with errors like: [ERROR] WSREP: Trx 236236 tries to abort slave trx 236238 ()
Server crashes when a table uses a sequence as a column default (DEFAULT NEXT_VALUE(my_seq)) and the table is used concurrently by both a prepared statement and a normal statement. ()
InnoDB causes server crash when a table is converted from utf8mb3 to utf8mb4 ()
When enabling , server crash can occur. (MENT-1307)
MariaDB Enterprise Audit occasionally hangs when rotating logs. (MENT-1339)
InnoDB sometimes causes server crash during when the imported tablespace contains columns that have been instantly reordered or dropped. The MariaDB error log contains the following error message: (, ) Schema mismatch (Index field name newcol doesn't match tablespace metadata field name for field position…
can crash due to an incorrect conflict resolution on multi-master setup. (, )
hangs while it is executing DELETE FROM mysql.wsrep_cluster, which can be seen in the process list. (, )
does not prevent replication. (MDEV-24969)
MariaDB Enterprise Cluster joiner node incorrectly uses localhost for TLS certificate verification and fails to join cluster when and encrypt=3 are configured. (MDEV-26360)
mariadb --binary-mode is not able to replay some outputs if 0 is in the data. (MDEV-25444)
Memory leak with row-based replication can lead to high memory usage on replica servers. ()
and generate invalid SQL for some complex views. ()
When statement-based or mixed replication is used and a DML statement encounters an error in a transaction that creates or drops a temporary table, non-committed writes to transactional tables can be incorrectly replicated to replica servers. ()
joiner node fails to join cluster when and Backward Compatible SST TLS Mode is configured. ()
does not work correctly for UDF and stored functions if used in a query's WHERE conditions. ()
If an INVISIBLE column has a computed default value, an statement that doesn't specify a value for the column causes the default value to be ignored. ()
Password validation plugins (including ) cause a user's existing password hash to be removed from the server's in-memory privilege cache when the user tries to change their password to an invalid password. ()
In packets sent from the server, a column's "Original Name" field can contain the column's alias instead of original name of the column. This metadata mismatch can cause to raise an exception. ()
When using and MariaDB Replication with GTID between two clusters, MariaDB Replication between the clusters is not working. Also, system variable is missing. (MENT-1324)
With , a on a table with a Foreign Key Constraint is not replicated to other nodes. ()
On CentOS 7, auth_pam_tool has incorrect permissions. (MDEV-26380)
In alignment with the enterprise lifecycle, MariaDB Enterprise Server 10.4.22-14 is provided for:
CentOS 7 (x86_64)
Debian 10 (x86_64, ARM64)
Microsoft Windows (x86_64) (MariaDB Enterprise Cluster excluded)
Red Hat Enterprise Linux 7 (x86_64)
Red Hat Enterprise Linux 8 (x86_64, ARM64)
Rocky Linux 8 (x86_64, ARM64 Red Hat Enterprise Linux 8 packages)
SUSE Linux Enterprise Server 12 (x86_64)
SUSE Linux Enterprise Server 15 (x86_64, ARM64)
Ubuntu 20.04 (x86_64, ARM64)
Some components of MariaDB Enterprise Server might not support all platforms. For additional information, see MariaDB Corporation Engineering Policies"..
CVE (with cve.org link)
CVSS base score
7.5
MariaDB Enterprise Server 10.4.27-18 is a maintenance release of . This release includes a variety of fixes.
MariaDB Enterprise Server 10.4.27-18 was released on 2022-12-21.
The view shows details about the InnoDB temporary tablespace, which is the tablespace where InnoDB temporary tables are stored. (MDEV-29479)
Starting with this release, the details about the InnoDB temporary tablespace can be shown by querying for the name innodb_temporary:
When a table's default collation is set to the default collation for the table's character set, shows the COLLATE clause. ()
In previous releases, MariaDB Enterprise Server reduced the size of SHOW CREATE TABLE output by excluding the COLLATE clause if the table's default collation was set to the default collation for the table's character set.
When a column is renamed in a partitioned table with using the , the table can be corrupted. ()
When the InnoDB storage engine performs change buffer operations, the can overflow, which can cause table corruption. (, )
When a query contains an IN/ALL/ANY predicand and the subquery contains a GROUP BY clause with an IN/ALL/ANY predicand with a single-value subquery as the left operand, the server can crash. ()
If an InnoDB table contains a foreign key constraint and the child table's DATABASE_NAME/TABLE_NAME.ibd is longer than 330 characters, when the parent table is renamed, the server can crash. ()
When querying a partitioned table using the PARTITION syntax, if the WHERE clause results in an index merge, the server can crash. ()
When detecting CTE dependencies of nested CTEs that include one or more recursive CTEs, infinite recursion can occur until the server crashes. ()
When the is configured to use the bundled wsrep_notify.sh script, the server can hang during startup. ()
When selecting from InnoDB's (such as , , and ), if connections with open XA transactions are disconnected or killed at the same time, the server can crash. ()
When an application-time period with an empty name is added to a table using , the server can crash. ()
In previous releases, statements like the following could cause the server to crash:
When the Spider storage engine's ODBC foreign data wrapper is used with MariaDB Connector/ODBC 3.1.10, and later, the server can crash. ()
In the presence of replication filters, revoking privileges from a non-existing user on a primary (master) breaks replication on the replica (slave). ()
When is set on a replica node, the replica node does not skip replicated . ()
When a Spider table has a prefix index, query results can be incorrect. ()
InnoDB can extend tablespace files when additional capacity is not required. (
When an InnoDB table contains virtual generated columns that are indexed, InnoDB fails to purge secondary index records. ()
When using the InnoDB adaptive hash index, non-locking reads can return wrong results due to a potential ACID violation. (, , )
When is used on a temporary table, an empty result set is returned. ()
When a sequence is used as the default value in a table, rows inserted by an
When a column has both a UNIQUE index and a FULLTEXT index, full-text search using MATCH(..) AGAINST(..) does not work properly. ()
If the server is started with the enabled, but the TLS certificates and keys are not configured, the server will advertise the TLS support in the handshake but will not actually be able to use it. ()
With MariaDB Enterprise Cluster, when is configured, the joiner node ignores custom values for the system variable, and the SST copies the buffer pool file to the default location instead. ()
When a TIMESTAMP column is filtered in a subquery inside the ALL operator, the results can be incorrect. ()
When MyRocks is installed from a Debian package, the rocksdb.cnf configuration file gets installed to /etc/mysql/mariadb.conf.d/ instead of /etc/mysql/conf.d/. ()
When is executed, spurious errors about table rebuilds are logged. ()
In previous releases, the following messages would be logged, even though the tool already mitigated the issues itself:
In alignment with the , MariaDB Enterprise Server 10.4.27-18 is provided for:
CentOS 7 (x86_64)
Debian 10 (x86_64, ARM64)
Microsoft Windows (x86_64) (MariaDB Enterprise Cluster excluded)
Red Hat Enterprise Linux 7 (x86_64)
Some components of MariaDB Enterprise Server might not support all platforms. For additional information, see
MariaDB Enterprise Server 10.4.32-22 is a maintenance release of MariaDB Enterprise Server 10.4. This release includes a variety of fixes. Users of MariaDB Enterprise Server 10.4.31-21 are encouraged to upgrade. Additional steps are required if upgrading from Enterprise Server 10.4.31-21 to 10.4.32-22.
MariaDB Enterprise Server 10.4.32-22 was released on 2023-12-12.
CHACHA20-POLY1305 support when WolfSSL is used ()
The semi-synchronous replication magic number error "[ERROR] Read semi-sync reply magic number error" has been improved to show the semi-sync acknowledgment reported with printing the hex-dump of the failing network packet ()
Disable TLS v1.0 and 1.1 for MariaDB. TLSv1.1 removed from the default tls_version system variable. ()
With binary log enabled transactions that are filtered out of binlogging by any of binlog_{do,ignore}_db option may be lost in the engine. ()
DROP INDEX followed by CREATE INDEX may corrupt data ()
Assertion fails in MDL_context::acquire_lock upon parallel replication of CREATE SEQUENCE ()
A hang or crash could be observed in parallel replication of STATEMENT binlog format transactions modifying temporary tables. E.g. witnessed in rpl.rpl_parallel_temptable failure. ()
A failure that occurs due to unnecessary replication of CACHE INDEX and LOAD INDEX INTO CACHE although this is a local operation. ()
Rowid filter does not process a storage engine error correctly. A query that's executing a locking read and is using the Rowid Filter could cause a server crash if it has encountered a Lock Wait Timeout or Deadlock or a similar error when building the Rowid Filter. ()
Prefix keys for CHAR return error "ERROR 1062 (23000): Duplicate entry 'ß' for key 'a'" for MyISAM and Aria when inserting data ()
Possible wrong results of DISTINCT with NOPAD collations when SET big_tables=1; is set ()
Missed kill when the SQL thread goes to wait for parallel slave worker queues to drain. KILL query did not affect a replication thread, which remained alive unexpectedly by the user. ()
InnoDB tries to purge non-delete-marked records of an index on a virtual column prefix. An error like "InnoDB: tried to purge non-delete-marked record in index b of table test
Optimize is_file_on_ssd() to speedup opening tablespaces on Windows ()
Significant slowdown for query with many outer joins ()
An incorrect examined rows number is used in some cases like in the slow query log, with LIMIT ROWS EXAMINED, or with ANALYZE FORMAT=JSON when an executed query includes a stored function Each stored function call doubles the current count during processing ()
Parallel replication deadlock victim preference code erroneously removed. As a result, parallel slave could retry transaction execution more times than necessary. (
mysql_install_db doesn't properly grant proxy privileges to all default root user accounts ()
The second node cannot be started because Galera SST rsync wants to replicate snapshot directory when datadir is on a NetApp storage with NFS access ()
In alignment to the enterprise lifecycle, MariaDB Enterprise Server 10.4.32-22 is provided for:
CentOS 7 (x86_64)
Debian 10 (x86_64, ARM64)
Microsoft Windows (x86_64) (MariaDB Enterprise Cluster excluded)
Red Hat Enterprise Linux 7 (x86_64)
Some components of MariaDB Enterprise Server are supported on a subset of platforms. See for details.
This sixth release of 10.4 is a maintenance release, including a variety of fixes.
MariaDB Enterprise Server 10.4.12-6 was released on 2020-03-02.
CVE (with link)
CVSS base score
The systemd start and stop timeout for the MariaDB service is now set to 900 seconds (15 minutes). ()
MariaDB ColumnStore 1.4.3 is included in this release. Specific details on this component may be found in the .
For (Galera Library 26.4.4):
Setting was not effective because it was done after the socket was connected or accepted. The default value also caused TCP receive buffer auto-tuning to be disabled. This led to sub-optimal performance in high-bandwidth WAN clusters. The default value for
During a server restart, recovery could encounter an out-of-memory condition. A restart was only possible after increasing . ()
On a rollback of a large insert or update, or during a background task to purge transaction history after a large update or delete, the server could hang. ()
On a rollback or during a background task to purge transaction history due to a SPATIAL INDEX, the server could hang. ()
Executing or on tables could lead to an unexpected SQL Error (1118): Row size too large, when (default). ()
Queries, which use window functions and implicit grouping, could return wrong results. ()
Queries which use DISTINCT COUNT(*) OVER() in the expression returned wrong results. ()
Server could not be started when is set in a config file. ()
system variable default value changed from 80 to 90.
In alignment with the , MariaDB Enterprise Server 10.4.12-6 is provided for:
Red Hat Enterprise Linux 8
Red Hat Enterprise Linux 7
Red Hat Enterprise Linux 6
CentOS 8
Some components of MariaDB Enterprise Server might not support all platforms. For additional information, see
CentOS 6, Debian 8, and Red Hat Enterprise Linux 6 are no longer supported as per the Older releases are available from the . Instructions for installation are included as a README file within the download.
This page is: Copyright © 2025 MariaDB. All rights reserved.
[ERROR] Slave SQL: Error 'WSREP has not yet prepared node for application use' on query[ERROR] Slave SQL: Node has dropped from cluster, Gtid 1-1-1, Internal MariaDB error code: 1047" in the server log[ERROR] mariadbd: Error writing file '/opt/maria10.1/binlog/BINLOG' (errno: 1950 "Unknown error 1950")"wsrep::transaction::before_rollback(): Assertion state() == s_executing || state() == s_preparing || state() == s_prepared || state() == s_must_abort || state() == s_aborting || state() == s_cert_failed || state() == s_must_replay` failedWhen renaming a table to a long name, the server can crash. (MDEV-29258)
When an causes InnoDB to rebuild a table with a spatial index, the server can crash. (MDEV-29520)
When an InnoDB temporary table contains a spatial index, the server can crash if the temporary table is dropped due to DROP TEMPORARY TABLE or client disconnect. (MDEV-29507)
For some queries that involve tables with different but convertible character sets for columns taking part in the query, a repeatable execution of such queries in the prepared statement mode or as part of a stored routine can crash the server. (MDEV-16128)
When executing a SELECT .. UNION .. SELECT or statement, the server can crash. (MDEV-23160)
When is set and a view that includes a subquery is queried, the server crashes. (MDEV-16549)
When the rolling upgrade procedure for MariaDB Enterprise Cluster (powered by Galera) is used to upgrade from ES 10.3 to ES 10.4, the joiner nodes can crash after the upgrade to ES 10.4. (MDEV-29375)
In previous releases, the on the joiner node could contain the following error about the crash:
When an InnoDB table is being rebuilt, and a BLOB is updated during the online rebuild, a memory leak can occur. (MDEV-29600)
When a view is queried using a prepared statement, the query fails with the error code. (MDEV-17124)
In previous releases, the following error would occur:
INSERT ... SELECTWhen the does not contain a port number, the status variable shows 0 as the port number. (MDEV-28868)
When is enabled, performance is impacted if the rowid filter contains no elements. (MDEV-28846)
Rocky Linux 8 (x86_64, ARM64 Red Hat Enterprise Linux 8 packages)
SUSE Linux Enterprise Server 12 (x86_64)
SUSE Linux Enterprise Server 15 (x86_64, ARM64)
Ubuntu 20.04 (x86_64, ARM64)
Due to a flaw in the SST scripts, it was not possible to execute SST when datadir, or some innodb log directory points to a path that is actually a symlink to the actual data directory. (MDEV-29893)
Server can crash when a table of type SPIDER starts with a comment string which is not a parameter for SPIDER. (MDEV-31117)
Node crashes when trying to execute "CREATE TABLE ... WITH SYSTEM VERSIONING AS SELECT ..." (MDEV-31285)
Lock wait timeout with INSERT-SELECT, autoinc, and statement-based replication (MDEV-31482)
Too strict assertion which leads to a problem since with the BINLOG statement we can execute binlog events on master also (not only in applier). (MDEV-31651)
Galera cannot support wsrep_forced_binlog_format=[MIXED|STATEMENT] during CREATE TABLE AS SELECT. But a crash in the form of an assertion is an overreaction. Now a warning is issued instead. (MDEV-31660)
When using ROW_FORMAT=COMPRESSED, the server can crash with the warning "InnoDB: 2048 bytes should have been read. Only 0 bytes read. Retrying for the remaining bytes." in the server log (MDEV-31875)
Possible server crash when setting SPIDER option spider_delete_all_rows to 0 and delete all rows of a spider table (MDEV-31996)
Use of nested row constructs in the left expression of an IN subquery should produce an error. Example: (a,(b,c)) IN (SELECT ...). In some degenerate cases, the error was not detected, and this causes a crash at a further stage in query processing. (MDEV-32320)
A table-less subquery with a LIMIT clause with non-zero offset, like ( SELECT two LIMIT 1 OFFSET 1) can produce unexpected results. If used inside ORDER BY, it can cause a crash. (MDEV-32324)
Possible crash in the full-text search plugin parser when using FULLTEXT...WITH PARSER. (MDEV-32578)
Intermittent crashes when using SEQUENCE in combination with Galera (MDEV-32024)
When two clients execute FLUSH TABLES WITH READ LOCK/UNLOCK TABLES on a Galera node, the node would sometimes get stuck in a paused state. This can cause the next requests to fail. (MDEV-32282)
Sometimes a node has been dropped from the cluster on startup/shutdown with async replication enabled due to inconsistency issues with the mysql.gtid_slave_pos table (between master and replica nodes), because previously this table was not previously replicated within the cluster. (MDEV-31413)
Server crashes in check_sequence_fields upon CREATE TABLE .. SEQUENCE=1 AS SELECT .. (MDEV-29771)
Crash when searching for the best split of derived table (MDEV-32064)
When a new user is connecting or a user is changing the password while FLUSH PRIVILEGES is executed, the server can crash (MENT-1707)
.lock_row_lock_current_waits counter in information_schema.innodb_metrics may become negative (MDEV-30658)
SHOW REPLICA STATUS Last_SQL_Errno race condition on Errored replica restart. A contradictory YES of slave_running_status and an error code in Last_SQL_Errno will be shown (MDEV-31177)
Auto-increment no longer works for explicit FTS_DOC_ID (MDEV-32017)
In some cases, replaying transactions on other MariaDB Enterprise Cluster nodes results in an wrong "Failed to insert streaming client" warning (MDEV-32051)
Wrong bit encoding using COALESCE (MDEV-32244)
getting error 'Illegal parameter data types row and bigint for operation '+' ' when using ITERATE in a FOR..DO (MDEV-32275)
While checking for altered column in foreign key constraints, InnoDB fails to ignore virtual columns (MDEV-32337)
seconds_behind_master is inaccurate for Delayed replication (MDEV-32265)
The wsrep_sst_method variable can be set to an invalid value using the SET statement. (MDEV-31470)
Misleading help text for mysqlbinlog (mariadb-binlog) -T/--table option (MDEV-25369)
mbstream breaks page compression on XFS (MDEV-25734)
MyISAM tables took transactional metadata locks although there were no active transactions. (MDEV-28820)
"rpm --setugids" breaks PAM authentication (MDEV-30904)
A multi-row Insert into an empty table fails if the table has a unique index using hash. CHECK TABLE returns with "Table 't1' is marked as crashed and should be repaired" (MDEV-32015)
wrong table name in InnoDB's "row too big" errors (MDEV-32128)
Slow log Rows_examined for the slow_log can be out of range. In this case the server log includes "([ERROR] Unable to write to mysql.slow_log)" (MDEV-30820)
An incorrect examined rows number is used in some cases like in the slow query log, with LIMIT ROWS EXAMINED, or with ANALYZE FORMAT=JSON when a query gets executed inside of a function. Each stored function call doubles the current count during processing (MDEV-31742)
Rocky Linux 8 (x86_64, ARM64)
SUSE Linux Enterprise Server 12 (x86_64)
SUSE Linux Enterprise Server 15 (x86_64, ARM64)
Ubuntu 20.04 (x86_64, ARM64)
4.9
socket.send_buf_size with a default value of auto was added to allow send buffer tuning.The ENFORCE option for parameter slave-run-triggers-for-rbr can now be used to ensure that triggers defined on a table on the replica are executed for row-based replication (RBR) when a trigger on a primary (master) exists for this table. The LOGGING option already exists but only allows executing triggers on the replica for row-based replication if no trigger exists for this table on the primary (master). (MENT-607)
On Windows: Removed a misleading OS error 203 logged by in the error log when the datadir is defined as a network resource. (MDEV-21260)
ALTER TABLE ... IMPORT TABLESPACE (MDEV-21513)Possible server crash if (default) is set and if the value for parameter pos in does not point to the beginning of an event in the binary log. (MDEV-18046)
A replication primary (master) running in semi-sync mode could crash when is executed, and the replica reconnects using the GTID protocol. (MDEV-19376)
could encounter a deadlock if a backup is taken from a replica with is set to a value greater than 0 (MDEV-21255)
could crash when used in combination with FLUSH TABLES and UNLOCK TABLES (MENT-438)
The aria_pack utility crashed when running an offline datafile compression on a table. (MDEV-14183)
Dropping a partition with wsrep_OSU_method=RSU and SESSION sql_log_bin=0 caused the MariaDB Enterprise Cluster (Galera) node to hang. (MDEV-21189)
Shutdown of a replica (slave) Server could hang when is set to a value greater than 0 (MDEV-20821)
Using to set a timeout for the statement resulted in a crash. (MENT-634)
Querying the system status variable after enabling Galera Cluster Replication in MariaDB Enterprise Cluster for a running server could result in a crash. (MENT-633)
Inefficient thread handling in the thread pool, impacting any application that uses the thread pool. (MDEV-21343)
The MariaDB Enterprise Server config file mariadb-enterprise.cnf was not registered as a config file in RPM packages. (MENT-591)
generated a SQL syntax error. (MENT-643)
A query using GROUP BY with an expression containing a field of a view could return wrong results. (MDEV-20922)
Running the script mysql_tzinfo_to_sql for MariaDB Enterprise Cluster could result in inconsistent timezone information across different nodes. (MDEV-21209)
Using the option with would cause it to run out of memory. (MDEV-20679)
For MariaDB Enterprise Cluster (Galera Library 26.4.4):
GCS delivered a JOIN message even if the node was in a DONOR state.
GCache could contain mixed histories from different clusters.
GComm socket timestamping/liveness checking produced false positives during replication of large transactions, which caused excessive amounts of broken connections.
Large transactions were able to monopolize bandwidth when segmentation was configured, causing delays in messages relayed by the segment representative. The fix implements fair queuing of messages.
Due to a bug in quorum computation, two primary conflicting components were formed when the group merged and partitioned again while the new primary view was forming.
A range plan was not always used for multi-join queries. (MDEV-21383)
An on an table adding a new first column, which is used to define the system versioning period, could lead to unexpected errors. This only happened when the transaction-based system version was used. (MDEV-18865, MDEV-18875)
CentOS 6
Ubuntu 18.04
Ubuntu 16.04
Debian 10
Debian 9
Debian 8
SUSE Linux Enterprise Server 15
SUSE Linux Enterprise Server 12
Microsoft Windows
7.8
5.9
7.5
6.5
6.5
6.5
6.5
Galera has been updated to 26.4.13-1
Debian 9 support has been discontinued.
The has been added for with a default value of 0. (MDEV-18702)
When is executed with the command-line option, the backup tries to copy the InnoDB buffer pool dump file, which is located at the path defined by the system variable. (MDEV-28781)
Starting with this release, only copies the InnoDB buffer pool dump file during State Snapshot Transfers (SSTs) for MariaDB Enterprise Cluster, powered by Galera.
When is executed against an encrypted InnoDB tablespace file, the table can be corrupted. (MDEV-28779)
With MariaDB Enterprise Cluster, when is enabled on a node, users without the can still write to the node. ()
With MariaDB Enterprise Cluster, when a value is retrieved from an InnoDB sequence using the , the change is not replicated. ()
Starting with this release, InnoDB sequences are properly replicated when they are defined with NOCACH.
When an InnoDB table's collation is changed using with the INPLACE or NOCOPY algorithms, duplicate entries in unique indexes are not detected. ()
When INSERT .. SELECT .. GROUP BY is executed and the GROUP BY clause contains a derived table, the server can crash. (MDEV-28617)
When a query contains an ANY(SELECT .. GROUP BY(SELECT ..)) predicand with a redundant subquery in the GROUP BY clause, the server can crash. (MDEV-29139)
When ALTER TABLE .. ADD is used to add a column with the INSTANT algorithm, the server can crash if the ROW_FORMAT in the .frm file does not match the actual row format used by the data file. ()
For tables created prior to MariaDB Server 10.2, the ROW_FORMAT in the .frm file could be inconsistent with the actual row format used by the data file. If the server were upgraded to MariaDB Enterprise Server 10.6, the inconsistency could remain.
When INSERT .. SELECT is executed, and the SELECT query calls an aggregate or window function, the server can crash with a segmentation fault. ()
When the is called, the server can crash with a segmentation fault. ()
When a query uses the DISTINCT keyword and calls an aggregate function as an argument for an always-constant function, the server can crash. ()
An always-constant function is a function that always returns a constant value, even if the function's arguments are not constant.
For example, the is an always-constant function.
When is executed with the and options, the backup can hang due to a race condition between threads. ()
When an EXISTS predicate or an IN, ALL, or ANY predicand is used in an eliminated GROUP BY clause, the server can crash. (MENT-1606, )
When an IN subquery is used outside the context of a regular query (such as in a stored procedure), the server can crash. ()
When MariaDB Enterprise Cluster is used, and the Galera replication TCP port receives non-Galera network traffic, the server can crash. ()
In previous releases, when the crash occurred, the following messages would appear in the :
When a generated column is added to an InnoDB table with the INSTANT algorithm, the server can crash due to a buffer overflow. (MDEV-26420)
When is executed with a view definition that contains an unknown column in an ON condition, the server can crash instead of raising an error with the error code. (MDEV-29088)
For multi-table or queries, the optimizer fails to apply partition pruning optimization for the table that is updated or deleted from. (MDEV-28246)
When an IN condition contains a mixture of numeric and string values, results can be inconsistent. (MDEV-21445)
When a sequence event is written to the binary log with , the value of is not respected. (MDEV-28487)
When a transaction can't be fully written to the binary log, but the transaction can be safely rolled back, a LOST_EVENTS incident event is written to the binary log. (MDEV-21443)
In previous releases, this problem could cause replica servers to encounter the following error:
Starting with this release, a LOST_EVENTS incident is only written to the binary log
when safe rollback is not possible.
When a replica server replicates an incident event, the details about the failure are not in the primary server's error log, the replica server's error log, or the output of . (MDEV-21087)
When a backup is performed with , the backup includes binary logs. (MDEV-28758)
When a table is created from a that uses a recursive CTE, the table can use unexpected data types and contain truncated data if the calculated values from the recursive part of the CTE do not fit in the column types that are taken from the non-recursive part of the CTE. ()
Starting with this release, the CTE calculation is aborted when the calculated values do not fit in the column types. When this occurs, a warning or error (depending on is raised with the error code and the following error message:
When uses EditLine instead of readline (such as on Debian and Ubuntu), Unicode characters are not accepted. (MDEV-28197)
When the optimizer chooses a semi-join optimization for a subquery, the LooseScan and FirstMatch strategies are not considered for certain queries where they would be appropriate, and they are considered for certain queries where they would be inappropriate. (MDEV-28749)
When a FULLTEXT search is performed on an InnoDB table, the results are incorrect when the search term contains an apostrophe ('). ()
Starting with this release, when a search term contains an apostrophe ('), InnoDB tokenizes the word at the apostrophe, ignores the first token, and matches against the second token.
After upgrading from old versions of MariaDB Server, some operations fail if ALGORITHM=NOCOPY is specified. ()
In previous releases, the following error could be raised:
mariadb-backup command-line option removed
mysql command-line option added
mysqld command-line option added
mysqldump command-line option added
system variable added
In alignment with the enterprise lifecycle, MariaDB Enterprise Server 10.4.26-17 is provided for:
CentOS 7 (x86_64)
Debian 10 (x86_64, ARM64)
Microsoft Windows (x86_64) (MariaDB Enterprise Cluster excluded)
Red Hat Enterprise Linux 7 (x86_64)
Red Hat Enterprise Linux 8 (x86_64, ARM64)
Rocky Linux 8 (x86_64, ARM64 Red Hat Enterprise Linux 8 packages)
SUSE Linux Enterprise Server 12 (x86_64)
SUSE Linux Enterprise Server 15 (x86_64, ARM64)
Ubuntu 20.04 (x86_64, ARM64)
Some components of MariaDB Enterprise Server might not support all platforms. For additional information, see MariaDB Corporation Engineering Policies.
CVE (with cve.org link)
CVSS base score
7.5
This second release of is a maintenance release, addressing security vulnerabilities and including a variety of fixes.
MariaDB Enterprise Server 10.4.7-2 was released on 2019-08-19.
CVE (with link)
CVSS base score
Merge relevant changes from MySQL 5.7.27
now maintains the sql_mode between the Spider Node and Data Nodes
Adjust spin loops to the x86 PAUSE instruction latency
Compatibility change: Change to OFF
v2 does not work with the PS protocol
Removed legacy option from enterprise build of MariaDB Backup
Changes to mysql_install_db script text
DROP TABLE IF EXISTS
option removed
option added
option added
option added
In alignment with the , MariaDB Enterprise Server 10.4.7-2 is provided for:
CentOS 7
CentOS 6
Debian 9
Debian 8
Some components of MariaDB Enterprise Server might not support all platforms. For additional information, see "".
CentOS 6, Debian 8, and Red Hat Enterprise Linux 6 are no longer supported as per the . Older releases are available from the . Instructions for installation are included as a README file within the download.
This eighth release of MariaDB Enterprise Server 10.4 is a maintenance release, including a variety of fixes.
MariaDB Enterprise Server 10.4.14-8 was released on 2020-09-08.
CVE (with link)
CVSS base score
Limit innodb_encryption_threads to 255 ()
Minimum value of raised to 8 (previously 4) so fixed size data types like and are not truncated for lower values of . ()
Backport from MariaDB Server 10.5.4 of improvements to for InnoDB. (MENT-636)
privilege for system user mariadb.sys removed for system table ()
doublewrite recovery can corrupt data pages. ()
table can disappear when trying to change primary key after disabling Foreign Key checks and violating a Foreign Key constraint. (MENT-804)
corruption in delete buffering. ()
Rollback of fails when column reorder occurs. ()
deadlock in ()
data file extension is not crash-safe. ()
is not crash safe. ()
Deadlock involving parallel workers, , and ()
Service shutdown fails if OS datetime has been updated backwards. ()
ALTER TABLE .. ANALYZE PARTITION can run for hours for huge tables if engine-independent persistent statistics are enabled, due to reading and locking of all rows in the table instead of for the partition. ()
can fail with privilege error when privilege exists at database level but privilege exists at table level. ()
and can't run if the library file doesn't exist. ()
This release includes
--help command-line option added
command-line option added
system variable minimum value changed from 4 to 8
In alignment to the , MariaDB Enterprise Server 10.4.14-8 is provided for:
Red Hat Enterprise Linux 8
Red Hat Enterprise Linux 7
Red Hat Enterprise Linux 6
CentOS 8
Some components of MariaDB Enterprise Server might not support all platforms. For additional information, see
CentOS 6, Debian 8, and Red Hat Enterprise Linux 6 are no longer supported as per the . Older releases are available from the . Instructions for installation are included as a README file within the download.
This page is: Copyright © 2025 MariaDB. All rights reserved.
SELECT * FROM information_schema.INNODB_SYS_TABLESPACES
WHERE name LIKE 'innodb_temporary';[Note] WSREP:
####### Assign initial position for certification: 5c410a36-23a8-11ed-a44c-f6f37823dd10:3, protocol version: -1
[ERROR] WSREP: Corrupt buffer header: addr: 0x7f722bd5b530, seqno: 7019267256999739392, size: 825111097, ctx: 0x559652a28678, flags: 14391. store: 46, type: 49
[ERROR] mysqld got signal 6 ;ALTER TABLE t
ADD PERIOD IF NOT EXISTS FOR `` (s,e);ERROR 1615 (HY000): Prepared statement needs to be re-preparederror: Table rebuild required. Please do "ALTER TABLE `TABLE_NAME` FORCE" or dump/reload to fix it!"terminate called after throwing an instance of 'boost::exception_detail::clone_impl<boost::exception_detail::error_info_injector<std::system_error> >'
what(): remote_endpoint: Transport endpoint is not connected
[ERROR] mysqld got signal 6 ;Last_SQL_Errno 1590
Last_SQL_Error The incident LOST_EVENTS occurred on the master. Message: error writing to the binary logOut of range value for column 'COLUMN_NAME' at row ROW_NUMERROR 1845 (0A000): ALGORITHM=NOCOPY is not supported for this operation. Try ALGORITHM=INPLACECompatibility change: Change to OFF by default
Merge upstream changes from (MDEV-19795)
plugin now requires the privilege to display information in the disks table in the information schema; the table will otherwise be empty (MDEV-18328)
Post-merge fixes for rocksdb.group_min_max test (MDEV-20113)
Replication hangs with "preparing" and never starts (MDEV-20247)
Failing assertion when REDO log files reach 512Gb while preparing backup (MDEV-20060)
Temporary tables created with data-at-rest encryption are not fully encrypted (MDEV-17228)
bugs related to creating tables (MDEV-19292, MDEV-20102)
for can result in a crash in some cases (MDEV-15641)
Failing tests in buildbot related to FULLTEXT INDEX (MDEV-14154)
Server startup bug with encrypted table (MDEV-19914)
Possible crash when and foreign key are used, if the referenced record is deleted at the same time (MDEV-19660)
Recovery with crash related to with custom (MDEV-19978)
Add page-id matching check in tool (MDEV-19871)
DROP TEMPORARY table is logged despite no CREATE was logged in binary log (MDEV-20091)
mysql_upgrade_service throws exception upgrading from 10.0 to 10.3 (MDEV-19427)
Loading the Audit plugin causes performance regression (MDEV-18661)
on table with virtual_field can cause crash (MDEV-19771)
Fix ER_CRASHED_ON_USAGE and Assertion (MDEV-19595)
Test change: innodb.trx_id_future fails on 10.3+ (MDEV-20138)
Possible foreign key corruption for ALTER TABLE … ADD COLUMN with (MDEV-19630)
Corruption after instant ADD or DROP when the index tree shrinks (MDEV-19916)
Cannot load compressed BLOB with (MDEV-19974)
Bug in versioned tables when deleting history (MDEV-19814)
Compressed columns cannot be restored from a dump (MDEV-17363)
Bugs in related to indexed virtual columns (MDEV-16222, MDEV-17005, MDEV-19870)
Encrypted temporary tables cannot be read with full_crc32 (MDEV-20340)
Change of COLLATE with unnecessarily requires ALGORITHM=COPY (MDEV-17301)
Changing an index comment unnecessarily rebuilds the index (MDEV-18266)
Server hangs on shutdown during installation of (MDEV-20179)
option added
option added
option added
option removed
option added
option added
status variable added
status variable added
status variable added
status variable added
system variable added
system variable added
system variable added
system variable added
system variable added
system variable added
system variable removed
system variable added
system variable added
system variable added
Red Hat Enterprise Linux 6
Ubuntu 18.04
Ubuntu 16.04
Microsoft Windows
6.5
6.5
5.5
5.1
4.9
3.7
3.7
Possible data inconsistency when executing ADD PRIMARY KEY with concurrent DML transactions. (MDEV-23244)
table corruption after (MDEV-22988)
to extend a column was incorrectly allowed to be instant. (MDEV-22771)
Crashes when running a SQL query containing a specific subquery pattern. (MDEV-23221)
Dropping the adaptive hash index may cause DDL to lock up InnoDB. (MDEV-22456)
could result in a crash when the value exceeds the max allowed 2147483647 (MDEV-22451)
Crash on WITH RECURSIVE large query (MDEV-22748)
Crash with Prepared Statement with a ? parameter inside a re-used CTE. (MDEV-22779)
Possible crash after changing the query_cache size. (MDEV-5924)
Crash in CREATE TABLE AS SELECT when the precision of returning type = 0 (MDEV-22502)
or in a statement which has a 0x00 byte in one of the values could crash the server. (MDEV-22111)
recovery can block server startup. (MENT-915)
Possible crash of a MariaDB Enterprise Cluster node when is executed (MDEV-23147)
Possible crash when executing . (MDEV-23009)
Server can hang when started with --plugin-load-add=server_audit and records in mysql.plugin refer to non-existent libraries. (MDEV-19918)
Server hangs on start up when loading if old plugin is installed (MENT-273)
Latency and throughput regression identified in write-heavy benchmarks for latest releases in MariaDB Server 10.2, 10.3, and 10.4. (MENT-909)
When giving a parallel optimistic slave a replication stop position with START SLAVE UNTIL .. file .. pos stops at an earlier position earlier than defined if the transaction that spans over the given stop position has to roll back due to conflicts. (MDEV-15152)
mariadb-backup --prepare does not stop on errors while applying redo log. (MDEV-22354)
Point in time recovery of binary log fails with syntax error when . (MDEV-23108)
Replication aborts with ER_SLAVE_CONVERSION_FAILED upon CREATE .. SELECT when . (MDEV-19632)
Regression in Audit Plugin Performance. (MENT-700)
ROW_FORMAT mismatch in instant . An instant ADD or DROP column or reorder could create a dummy table object with the wrong ROW_FORMAT when was changed between and . (MDEV-23295)
Slow shutdown on large instances when using Windows OS. (MDEV-22778)
Rounding functions return wrong datatype. (MDEV-23366, MDEV-23367, MDEV-23368, MDEV-23350, MDEV-23351, MDEV-23337, MDEV-23323)
produces zombie processes. (MDEV-21385)
Performance regression when using . (MENT-870)
CentOS 6
Debian 10
Debian 9
Debian 8
SUSE Linux Enterprise Server 15
SUSE Linux Enterprise Server 12
Ubuntu 20.04
Ubuntu 18.04
Ubuntu 16.04
Microsoft Windows
4.4
This seventh release of is a maintenance release, including a variety of fixes.
MariaDB Enterprise Server 10.4.13-7 was released on 2020-06-08.
CVE (with link)
CVSS base score
#1:
MariaDB CVEs are assigned a word rating instead of a CVSS base score. See the MariaDB Engineering Policy for details.
MariaDB ColumnStore 1.4.4 is included in this release. Specific details on this component may be found in the ColumnStore 1.4.4 release notes.
now displays a warning when upgrading a replica from MySQL Server to MariaDB Enterprise Server if data was present in the mysql.slave_master_info and mysql.slave_relay_log_info tables. A warning is needed as this information will be ignored. ()
has a new --ignore-table-data=<table> option. When used, the dump will include the table definition for the listed tables, but not the
Possible crash with data loss when executing an update of PRIMARY KEY columns on an table with a column. ()
ignored the timeout setting when an explicit LOCK TABLES ... WRITE was active in another session. As a result, MariaDB Enterprise Server waited for the release of the lock even if the timeout was reached. ()
When additional open_table_caches_instances have been created, a crash could occur due to exceeding the limit of open file descriptors. ()
Clean shutdown of was not possible due to a deadlock situation between Galera Nodes. (MENT-432)
Replication could be aborted when the replication data includes nested version-based conditional comments.
and mariadbd-safe processes showed as running after a server shutdown. ()
ignored the configuration from the server configuration file. ()
The plugin pam_user_map.so was not provided with binary tarball packages. ()
Upgrade to MariaDB Enterprise Server 10.4 could result in the inability to access the system table, if the root user was renamed before the upgrade. In MariaDB Enterprise Server 10.4, became a view owned by the root user. This view is now owned by the mariadb.sys system internal user. ()
error code added
system variable maximum value changed from 4294967295 to 255
system variable added
command-line option added
In alignment with the , MariaDB Enterprise Server 10.4.13-7 is provided for:
Red Hat Enterprise Linux 8
Red Hat Enterprise Linux 7
Red Hat Enterprise Linux 6
CentOS 8
Some components of MariaDB Enterprise Server might not support all platforms. For additional information, see
CentOS 6, Debian 8, and Red Hat Enterprise Linux 6 are no longer supported as per the . Older releases are available from the . Instructions for installation are included as a README file within the download.
This page is: Copyright © 2025 MariaDB. All rights reserved.
has a new --rollback-xa option. By default, will not commit or rollback uncommitted XA transactions, and when the backup is restored, any uncommitted XA transactions must be manually committed using XA COMMIT or be manually rolled-back using XA ROLLBACK. The --rollback-xa option can be used to rollback uncommitted XA transactions while performing a --prepare operation, eliminating the need for manual commit or rollback when the backup is restored. (MDEV-21168)
is now limited to 255. (MDEV-22258)
system variable added, to control that a primary server only completes the shutdown after the last binary log has been sent to all connected slaves. This behavior is not active by default. Before the addition of this system variable, this was achieved using mariadb-admin shutdown --wait_for_all_slaves for a master. (MENT-202)
aria_pack tool now provides the options --datadir, --ignore-control-file, --require-control-file for tables with auto-recovery enabled (TRANSACTION=1). (MENT-657)
system variable added to control whether an instant ADD or DROP column or reorder can change an format. The default is add_drop_reorder to allow a format change for all types of . Option never should be used if a tablespace import to older versions of MariaDB Server should be possible. add_last should be used if a tablespace import into MariaDB Enterprise Server 10.3 or 10.4 should be possible. Instant resulting in reordering of columns will not be possible, but an instant ADD column as the last column can be done (behavior of MariaDB Enterprise Server 10.3). (MDEV-20590)
system variable added, to enforce TLS secure connections. (MENT-66)
Index length limit for the and S3 storage engines has been increased from 1000 to 2000 bytes. (MENT-401)
IF EXISTS clause can now be used with and (MENT-725)
) system variable implicitly applies IF EXISTS clause to several DDL statements, including , , , , , , DROP PACKAGE, and . (MENT-725)
now provides support for replication. A new system parameter was added to define whether S3 replication is the same S3 storage for primary and replica. A new system parameter controls whether all rows should be added to the binary log when a S3 table is altered to a local table. (MENT-725)
now supports partitioning, with the limitation that REBUILD PARTITION, TRUNCATE PARTITION, and REORGANIZE PARTITION cannot be used. (MENT-725)
System user mariadb.sys has been added. (MDEV-19650)
Adding a column to the discarded tablespace was possible, resulting in a crash. (MDEV-22446)
on an table could crash when an index field has been converted from utf8mb3 to utf8mb4 character set. (MDEV-20726)
A Node (Galera) could hang on rejoining the cluster during IST. (MDEV-21002)
Using SET GLOBAL for the InnoDB variables , , , and could lead to corrupted strings for the settings. (MDEV-22393)
Changing the Server-Id could lead to events being disabled for replicas, even if a single node configuration without a replica was used. (MDEV-21758)
incorrectly shows the privilege Delete versioning rows instead of . (MDEV-20382)
Wrong query results have been returned with (MDEV-21614)
does not quote role names properly for a user granted to this role. (MDEV-20076)
Partitioning could choose the wrong partition for the RANGE partitioning by the column. (MDEV-21195)
A performance regression when optimizer flag rowid_filter is activated. (MDEV-21794)
An defining the authentication plugin did not remove any other authentication plugin from mysql.global_priv for this user. (MDEV-21928)
An online ADD PRIMARY KEY could fail after an instant DROP or reorder was executed for fields of the same table. (MDEV-21658)
Dropping an indexed column could occur as an instant operation, although is not instantaneous. (MDEV-22465)
A query with many JOIN and UNION ALL clauses could result in ERROR 9 (HY000) Unexpected end-of-file (MENT-750)
auth_string field. This field was renamed to authentication_string with MariaDB Server 5.5. (MDEV-21244)command-line option added
command-line option added
command-line option added
command-line option added
--ignore-table-data command-line option added
system variable added
system variable added
CentOS 6
Ubuntu 20.04
Ubuntu 18.04
Ubuntu 16.04
Debian 10
Debian 9
Debian 8
SUSE Linux Enterprise Server 15
SUSE Linux Enterprise Server 12
Microsoft Windows
5.5
5.3
4.9
4.9
N/A (Medium)#1
#1:
MariaDB CVEs are assigned a word rating instead of a CVSS base score. See the MariaDB Engineering Policy for details.
InnoDB's internal performance has been improved. (MDEV-30567)
The aria_log_dir_path system variable is added as read-only. (MDEV-30971)
The --aria-log-dir-path command-line option is added to mariadb-backup.
The default value for the core_file system variable has been changed from None to OFF. ()
The innodb_buffer_pool_filename system variable can no longer be changed dynamically. ()
In previous releases, when innodb_buffer_pool_dump_at_shutdown was enabled, users with the SUPER privilege were able to dynamically change the value of the innodb_buffer_pool_filename system variable: SET GLOBAL innodb_buffer_pool_filename='SOME_FILE_PATH';
Starting with this release, the innodb_buffer_pool_filename system variable must be configured in a configuration file prior to starting up the server:
When a backup is created with mariadb-backup and aria_log_dir_path is configured, the Aria logs are not copied to the backup. (MDEV-30968)
When system versioning is enabled for a table without a primary key, changes to the table are not properly replicated. (MDEV-30430)
When a partitioned table contains a prefix index on a column that uses a NOPAD collation, queries with ORDER BY can return rows in the wrong order. (MDEV-30072)
For some collations, when a unique constraint is defined with UNIQUE(..) USING HASH, duplicate values are accepted. ()
When an InnoDB table with ROW_FORMAT=REDUNDANT is being rebuilt due to a DDL statement, the server can crash while trying to apply cached DML operations to the rebuilt table. ()
Long uniques don't work correctly with Unicode collations. Equal strings (in terms of the collation) are compared as unequal if the length of the strings are different. (, )
When innodb_buffer_pool_filename is set to the empty string, the server tries to delete the datadir during shutdown. ()
Starting with this release, the innodb_buffer_pool_filename system variable is read-only and can't be changed dynamically.
When slave_parallel_mode is optimistic and slave_parallel_threads is greater than 0, ALTER SEQUENCE can fail with an out-of-order binlog error if the sequence uses InnoDB. ()
In previous releases, the following error can be raised:Last_Error: Error 'An attempt was made to binlog GTID 0-1-100 which would create an out-of-order sequence number with existing GTID 0-1-100 and gtid stric mode is enabled' on query. Default database: 'test'. Query: 'alter sequence s1 restart with 1' will be shown.
When an UPDATE or DELETE is rolled back from an InnoDB table with ROW_FORMAT=COMPRESSED, the server can crash. (MDEV-30882)
When the LEFT() function is called on a string that has no character set defined, the server can crash. (MDEV-30351)
With Galera, when wsrep_sst_method=mariadb-backup is set and encrypt=4 is enabled for State Snapshot Transfers (SSTs), SSTs can fail if the version of socat installed on the donor node is 1.7.4.0 or later. ()
In previous releases, SSTs could fail with the following error in the donor node's MariaDB error log if the version of socat installed is 1.7.4.0 or later:E Failed to set SNI host ""
Starting with this release, when the SST script starts the socat listener on the donor node, the error is prevented by setting no-sni=1 if the version of socat installed is 1.7.4.0 or later.
When optimizer trace is enabled, if a view is part of a multi-table update, the server can crash. ()
When a view definition contains a UNION and the view is queried using server-side prepared statements, if the optimizer pushes down a condition into the execution of the view, the server can crash during character set conversions. ()
When a replica server connects to a primary server with MASTER_USE_GTID=slave_pos, if the primary server has encrypted binary logs that it can no longer decrypt, the primary server crashes due to a segmentation fault. ()
In previous releases, the primary node would iterate over all of its binary logs to look for the requested GTID. When one of the binary logs could not be decrypted, the server would crash.
Starting with this release, when the primary node fails to decrypt a binary log in this scenario, it stops iterating over the binary logs and raises an error with the ER_MASTER_FATAL_ERROR_READING_BINLOG error code with the following error message:Got fatal error 1236 from master when reading data from binary log: 'Could not set up decryption for binlog.'
With Galera, when streaming replicating is enabled by setting the wsrep_trx_fragment_size system variable, the server can crash when certain fragment sizes are specified. ()
When EXPLAIN EXTENDED is executed for a single-table DELETE that contains an IN(..) predicand, the server can crash. ()
When parallel replication is enabled by setting slave_parallel_threads greater than 0, the replica's parallel replication worker threads could hang after hitting an error. ()
In previous releases, when the server was hung in this scenario, the output of SHOW SLAVE STATUS would show that an error occurred, but the output would indicate that both the I/O and SQL threads were running.SHOW SLAVE STATUS\G
In this scenario, this issue causes one of the parallel replication worker threads to hang in the closing tables state, so the output of SHOW PROCESSLIST would show one worker thread in that state indefinitely:SHOW PROCESSLIST;<<code>> +------+--------------+--------------------+------+--------------+-------+-----------------------------------------------+------------------+----------+
Id
User
Host
db
Command
Time
State
Info
Progress
+------+--------------+--------------------+------+--------------+-------+-----------------------------------------------+------------------+----------+ ..
2394
system user
NULL
Slave_worker
50852
closing tables
NULL
0.000
.. +------+--------------+--------------------+------+--------------+-------+-----------------------------------------------+------------------+----------+ <>
When the optimizer chooses how to split a semi-join, the server can crash. (MDEV-31403)
With Galera, when CREATE TEMPORARY SEQUENCE is executed on a cluster node and binary logging is enabled, the server crashes. (MDEV-25045)
With Galera, when a write set fails certification and binary logging is enabled, the WSREP sequence numbers (cluster-wide transaction IDs) used by a WSREP applier thread can become out of sync with the node's XIDs (internal transaction IDs) due to a race condition, which can cause the node to crash. (MDEV-27317)
In previous releases, when a write set failed certification and binary logging was enabled, a WSREP applier thread could sync the WSREP sequence number out-of-order, because the commit order could be released too early.
With Galera, when streaming replicating is enabled by setting the wsrep_trx_fragment_size system variable and CREATE TABLE .. SELECT is executed, the server can crash. The following assertion is written to the MariaDB error log during the crash: ()
Assertion mode_ == m_high_priority' failed in void wsrep::client_state::after_applying()`
Starting with this release, the server prohibits CREATE TABLE .. SELECT in this scenario and raises the ER_NOT_ALLOWED_COMMAND error code with the following error message:ERROR 42000: CREATE TABLE AS SELECT is not supported with streaming replication
With Galera, when a connection uses the handler interface to start a transaction on a table, the server can crash when the client disconnects. (MDEV-30955) In previous releases, when the client disconnected, the server would rollback the transaction and release all locks, including the locks that the handler interface expected to survive after the transaction ended, which would cause the server to crash.
In previous releases, the following assertion is written to the MariaDB error log during the crash:
With Galera, when an SST donor changes to the non-primary state, the SST is not terminated properly, and the donor node crashes. (MENT-1708)
In previous releases, the following error message and assertion is written to the MariaDB error log during the crash:
When a query is executed that uses DISTINCT and an aggregate function on a group, the server can crash. (MDEV-31113)
When a server-side prepared statement is used to execute a query that references views and contains a HAVING clause, the server can crash upon second execution of the query. (MDEV-31189)
When the InnoDB purge thread tries to use the change buffer for an uncommitted index, the server aborts with an assertion. (MDEV-30076)
When the rowid_filtering optimization is used with a partitioned table, the server aborts with an assertion. ()
With Galera, a hang can occur in "starting" commit state due a deadlock between a KILL command and an abort issued by an applier. (MENT-1855)
Starting with this release, Total Order Isolation (TOI) is not used for the KILL command.
When binlog_row_image=FULL is set and slave_parallel_threads is greater than 0, replica servers can hang if data is inserted into tables with a sequence. ()
InnoDB aborts when fulltext background thread does a sync commit operation. ()
When EXPLAIN EXTENDED is executed for a multi-table UPDATE that uses the system join type, the output can be incorrect. (MDEV-31224)
When a query specifies DISTINCT and contains expressions using the SUM() function, the wrong results are returned. (MDEV-20057)
When a view's definition contains a HAVING clause, selecting from the view can fail with an error. (MDEV-28570)
In previous releases, queries could raise an error with the ER_VIEW_INVALID error code and the following error message:View 'test.v1' references invalid table(s) or column(s) or function(s) or definer/invoker of view lack rights to use them
When a view's definition contains an aggregate function, selecting from the view can fail with an error. ()
In previous releases, queries could raise an error with the ER_INVALID_GROUP_FUNC_USE error code and the following error message:
ERROR 1111 (HY000): Invalid use of group function
When a view's definition contains a table-value constructor (TVC) as a single-value subquery, selecting from the view can fail with an error. ()
In previous releases, queries could raise an error with the ER_VIEW_INVALID error code and the following error message:View 'test.v1' references invalid table(s) or column(s) or function(s) or definer/invoker of view lack rights to use them
When a view's definition contains an aggregate function in an uncorrelated subquery, the wrong result is returned. (MDEV-29224)
When a DELETE statement contains a subquery with a HAVING clause or an aggregate function in the WHERE clause, the statement can fail with an error. (MDEV-30586)
In previous releases, queries could raise an error with the ER_INVALID_GROUP_FUNC_USE error code and the following error message:ERROR 1111 (HY000): Invalid use of group function
When an InnoDB tablespace has been discarded, selecting from information_schema.INNODB_SYS_INDEXES fails with an error. ()
In previous releases, an error with the ER_UNKNOWN_ERROR error code is raised:ERROR 1105 (HY000): Unknown error
Starting with this release, no error is returned, and the results contain NULL for the PAGE_NO and SPACE columns for discarded tablespaces.
When innodb_undo_directory is set to a relative path, the path is not properly used by mariadb-backup --copy-back. ()
In previous releases, the undo logs would be copied to the relative path compared to the current working directory.
Starting with this release, the undo logs are copied to the relative path compared to the datadir.
When UNIX_TIMESTAMP(CURRENT_TIME()) is executed, the incorrect value is returned. (MDEV-26765)
In previous releases, NULL is returned.
With Galera, when wsrep_sst_method='mariadb-backup' is set, systemd raises an error about a mismatched PID. (MDEV-25887)
In previous releases, systemd could raise the following error, where BACKUP_PID is the PID of MariaDB Enterprise Backup and SERVER_PID is the PID of MariaDB Enterprise Server:Got notification message from PID BACKUP_PID, but reception only permitted for main PID SERVER_PID
When an UPDATE contains a WHERE clause that contains a range condition over a non-indexed VARCHAR column, an error is raised. ()
In previous releases, an error with the ER_DATA_TOO_LONG error code is raised with the following error message:
ERROR 1406 (22001): Data too long for column 'COLUMN_NAME' at row 1
When slave_parallel_threads is greater than 0 and SHOW SLAVE STATUS is executed, the connection can try to acquire an uninitialized mutex. ()
In previous releases, a race condition could cause the mutexes of parallel replication worker threads to be acquired before they are initialized.
The ucs2_general_mysql500_ci collation, which is intended for compatibility with older versions of MySQL, incorrectly sorts 'ß' after 's'. ()
When EXPLAIN EXTENDED is executed with an INSERT, UPDATE, DELETE, or REPLACE, a warning containing the query text is not printed. ()
The rowid_filtering optimization is applied incorrectly in some cases. ()
When preparing a partial backup, MariaDB Enterprise Backup raises error messages about missing InnoDB tablespace files that are expected to be missing, because they were excluded from the backup. ()
For certain data distributions, the optimizer histogram code can produce wrong selectivity, which can lead to performance degradation. ()
aria_log_dir_path system variable added.
core_file system variable default value changed from None to OFF
innodb_buffer_pool_filename system variable dynamic changed from Yes to No
mariadb-backup --aria-log-dir-path command-line option added.
In alignment with the enterprise lifecycle, MariaDB Enterprise Server 10.4.30-20 is provided for:
CentOS 7 (x86_64)
Debian 10 (x86_64, ARM64)
Microsoft Windows (x86_64) (MariaDB Enterprise Cluster excluded)
Red Hat Enterprise Linux 7 (x86_64)
Red Hat Enterprise Linux 8 (x86_64, ARM64)
Rocky Linux 8 (x86_64, ARM64 Red Hat Enterprise Linux 8 packages)
SUSE Linux Enterprise Server 12 (x86_64)
SUSE Linux Enterprise Server 15 (x86_64, ARM64)
Ubuntu 20.04 (x86_64, ARM64)
Some components of MariaDB Enterprise Server might not support all platforms. For additional information, see MariaDB Corporation Engineering Policies"..
CVE (with cve.org link)
CVSS base score
N/A (Medium)
1: MariaDB CVEs are assigned a word rating instead of a CVSS base score. See the MariaDB Engineering Policy for details.
The new --system={all, users, plugins, udfs, servers, stats, timezones}command-line option allows dumping system information in logical form. ([MDEV-23630](https://jira.mariadb.org/browse/MDEV-23630))
Added primary host and port info to replica stop messages. (MDEV-10272)
Parameter has no effect and is defined as deprecated. (MDEV-24536)
New to continue the backup process when corruption is encountered. Corrupted pages are logged in backup_corrupted file in the backup destination directory. ()
adds completed with Error! to the end of the log file if the backup is started with parameter and completed with corrupted tables. The new log entry canceled with Error! will be used when the backup could not be completed. (MENT-1059)
and system variables are read-only. ()
Galera wsrep library updated to 26.4.7 in .
Encryption Plugin for added. (MENT-852)
and allow either order for ACCOUNT LOCK and PASSWORD EXPIRE ()
In a very unlikely event, corruption of system tablespace or last recovered page can occur on recovery or a MariaDB Backup prepare. (MENT-1124, MDEV-24449)
Crash on recovery after server kill during instant ADD COLUMN (MDEV-24323)
Possible segfault on with explicit FTS_DOC_ID_INDEX using multiple fields. (MDEV-24403)
Server crashes upon attempt to update view through second execution of a stored procedure. (MDEV-16940)
containing clause can crash. (MDEV-22781)
Possible crash for a query using recursive CTE without having a default schema defined. ()
Server crash on WITH RECURSIVE UNION ALL (CTE) query. ()
Server hang due to lock conflict resolution. ()
Possible crash in replication when applying a transaction that contains cascading foreign key delete for a table and that has an indexed virtual column. ()
Possible lock conflicts between two wsrep high priority threads in on tables having unique secondary keys. ()
Server crash when uses a subselect. ()
Possible crash of the server when audit logging is active. (MENT-1098)
crash after execution of XA START ()
is missing the WITH GRANT privilege for roles. (MDEV-24289)
mysqld_safe log messages are missing in the error log file. (MDEV-21367)
CHECK_CLAUSE field in truncates check constraints expressions. (MDEV-24139)
Unexpected error message when selecting from view that uses mergeable derived table. ()
Permission denied error message is returned on users with permissions for nested CTEs. ()
Regression: SELECT .. UNION .. with inconsistent column names fails. ()
Race condition between and transaction commit with . ()
Plugin system variables and activation options can break mariadbd for . ()
SELECT INTO OUTFILE used permission 666 where 644 should be used to limit the privileges to change the file. ()
Syntax error on correct syntax for CREATE VIEW that includes X is null = 0 ()
Altered connection limits for user have no effect. ()
Syntax error when using COLLATE for creating virtual columns. ()
Auto purge of relaylogs stops when relay-log-file is slave-relay-log.999999 and is enabled. ()
ORDER BY in view definition leads to wrong result with GROUP BY on query using view. ()
column from a derived table returns invalid values. ()
doesn't respect filters for events. ()
plugin doesn't consider proxy users in and [server_audit-system-variables/#server_audit_incl_users|server_audit_incl_users] ()
With ALTER USER .. IDENTIFIED BY command, password isn't replaced by asterisks in audit log. (MENT-1128)
does not insert history row for or application period based tables if the row has not changed. ()
Wrong duplicate primary key error between the history row generated on referential action and the history row on evaluating foreign referential action for self-reference in a table (, )
Wrong number of decimal digits in certain UNION or subquery constellations, like union of unsigned and NULL type. ()
CREATE TABLE .. SELECT FROM does not create table if is not using a scalar value. ()
may report incorrect binlog position information after RESET MASTER ()
Sequences which are used as default by a table are not dumped in right order by mariadb-dump ()
generates invalid SQL for user where password expiry and account lock set. ()
Garbd of can't initiate SST ()
Misleading error message from might be interpreted as a point in time recovery is not possible. ()
High memory usage in the optimizer when a query is using SELECT … FROM tbl … WHERE unique_key not in (long-list) AND .. unique_key not in (long-list) AND .. ()
ALTER TABLE for tables with CHECK CONSTRAINTS returns with Out of Memory error. ()
fails with error messages ALGORITHM=INSTANT is not supported for this operation (MDEV-16735)
performance schema table schema changed
information schema table schema changed
performance schema table schema changed
performance schema table schema changed
performance schema table schema changed
performance schema table schema changed
performance schema table schema changed
performance schema table schema changed
system variable maximum value changed from 18446744073709551615 to 4294967295
command-line option added
command-line option added
--include-unsupported command-line option added
--skip-check-installed command-line option added
--version command-line option added
--version command-line option added
system variable minimum value changed from 8 to 64
performance schema table schema changed
performance schema table schema changed
performance schema table schema changed
In alignment with the enterprise lifecycle, MariaDB Enterprise Server 10.4.18-11 is provided for:
CentOS 7 (x86_64)
Debian 10 (x86_64, ARM64)
Microsoft Windows (x86_64) (MariaDB Enterprise Cluster excluded)
Red Hat Enterprise Linux 7 (x86_64)
Red Hat Enterprise Linux 8 (x86_64, ARM64)
Rocky Linux 8 (x86_64, ARM64 Red Hat Enterprise Linux 8 packages)
SUSE Linux Enterprise Server 12 (x86_64)
SUSE Linux Enterprise Server 15 (x86_64, ARM64)
Ubuntu 20.04 (x86_64, ARM64)
Some components of MariaDB Enterprise Server might not support all platforms. For additional information, see MariaDB Corporation Engineering Policies".
In alignment with the MariaDB Engineering Policy, this release does not include CentOS 6.x and RHEL 6.x packages.
CVE (with cve.org link)
CVSS base score
N/A (Critical)
[mariadb]
innodb_buffer_pool_filename=SOME_FILE_PATH*************************** 1. row ***************************
Slave_IO_State: Waiting for master to send event
..
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
..
Last_Errno: 1062
Last_Error: Could not execute Write_rows_v1 event on table TABLE_NAME; Duplicate entry 'VALUE' for key 'KEY_NAME', Error_code: 1062; handler error HA_ERR_FOUND_DUPP_KEY; the event's master log LOG_FILE, end_log_pos END_LOG_POS
..void close_thread_table(THD*, TABLE**): Assertion `thd->mdl_context.is_lock_owner(MDL_key::TABLE, table->s->db.str, table->s->table_name.str, MDL_SHARED)' failed.[Warning] WSREP: server: NODE_NAME unallowed state transition: connected -> joined
void wsrep::server_state::state(wsrep::unique_lock<wsrep::mutex>&, wsrep::server_state::state): Assertion `0' failed.This thirteenth release of is a maintenance release. This release includes a variety of fixes.
MariaDB Enterprise Server 10.4.21-13 was released on 2021-09-14.
This release of MariaDB Enterprise Server includes features backported from MariaDB Enterprise Server 10.6.
allows database-specific and table-specific filters. (MENT-65) For example:
can be configured not to start the server if Audit Filters are invalid. (MENT-1243)
Added the new system variable.
To configure server startup to fail if Audit Filters are invalid, set to OFF and set server-audit to FORCE or FORCE_PLUS_PERMANENT.
This release of MariaDB Enterprise Server includes features backported from MariaDB Enterprise Server 10.5.
Support added for Galera Global Transaction ID in MariaDB Enterprise Cluster (Galera), which replicates MariaDB Global Transaction ID to other nodes in the cluster (MENT-932)
Galera updated to 26.4.9
ARM64 is now supported for several .
The script wsrep_sst_mariadb-backup checks all server-related configuration groups when processing a configuration file. ()
When an statement is executed with ALGORITHM=INSTANT, a warning is not raised when the operation causes the default value of a DATE column to be truncated. ()
Possible server crash when pushing a WHERE condition over a mergeable derived table / view / CTE DT into a grouping view / derived table / CTE V whose item list contained set functions with constant arguments. ()
Server crashes on the second execution of a stored procedure or a prepared statement when the corresponding query executes a window function on a view, CTE, or derived table. ()
Server crashes are possible when executing a prepared statement with a hanging recursive CTE. ()
When fails after dropping the table, the DROP TABLE operation is not written into the binary log. ()
The statement does not quote role names properly for the DEFAULT ROLE. ()
The utility reports errors for freed pages. ()
When an unknown column is referenced in the WHERE
As a result of this issue, a Joiner node writes the following error to the :
With MariaDB Enterprise Cluster, when is set, rsync for a new SST process may be killed rather than the rsync for the old SST process. ()
With MariaDB Enterprise Cluster, the WSREP threads could write warnings about foreign keys to the when is not enabled. ()
In prior releases, the following warning could be written to the log:
Starting with this release, the WSREP threads will only write warnings about foreign keys to the when is enabled.
The statement may check the wrong maximum column length. ()
The storage engine handles ">=" as ">" in some cases, where multi-column indexes are used. ()
The system variable does not work correctly with the
information schema table added
mysqld --server-audit-load-on-error command-line option added
system variable added
information schema table added
In alignment with the , MariaDB Enterprise Server 10.4.21-13 is provided for:
CentOS 7 (x86_64)
Debian 10 (x86_64, ARM64)
Microsoft Windows (x86_64) (MariaDB Enterprise Cluster excluded)
Red Hat Enterprise Linux 7 (x86_64)
Some components of MariaDB Enterprise Server might not support all platforms. For additional information, see
The default value of is ON, so the default behavior is the same as in prior releases.
Enhanced consistency for Semi-Sync Replication
When , consistency is guaranteed for a Primary server in an HA (Primary/Replica) topology when using semi-synchronous replication. (MDEV-21117)
Prior to this release, when using semi-synchronous replication, if a Primary crashed before sending a transaction to the Replica, on restart, the Primary could recover incomplete InnoDB transactions when rejoining as a Replica.
With this release, when using semi-synchronous replication and with rpl_semi_sync_slave_enabled=ON, incomplete transactions will be rolled-back on the Replica, ensuring the new Primary (former Replica) and new Replica (former Primary) remain in sync.
mysqldMariaDB Enterprise Backup expects to stream a backup using the included mbstream utility. (MDEV-15730)
Prior to this release, MariaDB Enterprise Backup expected , even though the xbstream utility had been renamed to mbstream.
InnoDB no longer acquires advisory file locks by default. (MDEV-24393)
The table has been added and can be used to view details about SQL keywords. (MDEV-25129)
The table has been added and can be used to view details about built-in functions. (MDEV-25129)
When using data-at-rest encryption with the encryption plugin, InnoDB will automatically disable key rotation checks. (MDEV-14180)
The encryption plugin does not support key rotation, so key rotation checks are not required.
In previous releases, unnecessary key rotation checks with the encryption plugin could reduce performance, unless they were explicitly disabled by setting .
Removed SSL ciphers RC4-MD5 and RC4-SHA for binaries compiled with WolfSSL. (MDEV-26092)
Server crashes while executing a query with a recursive CTE that is indirectly used twice. (MDEV-26202)
Server crashes due to infinite recursion while processing an embedded recursive CTE with missing RECURSIVE. (MDEV-26095)
Server crashes in InnoDB deadlock checker under high load. (MDEV-25594)
Server crashes when a virtual generated column has a prefix index. (MDEV-26220)
Server crashes are possible when using virtual generated columns. (MDEV-18166, MDEV-18249)
Server crashes while executing when a column is truncated. (MDEV-17890)
Server crashes while executing when a hostname cannot be resolved. (MDEV-26081)
Server crashes when a subquery references an outer column in an ORDER BY clause. (MDEV-25629)
Server crashes due to a stack overrun in the query optimizer while executing a query with more than 32 equality conditions that compare columns of different tables (such as tableX.colX=tableY.colY). (MDEV-17783)
Server crashes when a window function is the left expression of an IN(SELECT ..) subquery. (MDEV-25630)
Possible deadlock on a Replica server using GTID Replication when and , , or is executed. (MDEV-17515)
Server crashes when fails on an InnoDB table. (MDEV-25721)
Server crashes while executing on an InnoDB table with a Full-Text Index. (MDEV-25663)
Server crashes while executing on an InnoDB table with virtual generated columns that are indexed. (MDEV-25872)
Server crashes while executing when innodb_read_only is enabled. (MDEV-25886)
Server crashes when a connection is killed while executing after previously locking the table with . (MDEV-17749)
Server crashes when the global value of the system_versioning_asof system variable is set using a stored function that reads the value of another global system variable. (MDEV-16481)
Server crashes when is active and usernames longer than 256 characters are used. (MENT-1019)
Server crashes when is active, and audit log file rotation is triggered. (MENT-1207)
Server crashes while executing a query with a CTE that is used at least twice and that references an embedded recursive CTE. (MDEV-26108)
Possible crash with transactions having changes for tables with no primary key to apply in parallel, when using MariaDB Enterprise Cluster. (MDEV-25551)
Server crashes when executing to create a table with a COMMENT value that does not contain embedded double quotes. (MDEV-26139)
Server crashes when a client connects during shutdown. (MDEV-18353)
Reusing CTE inside a function fails with the error code. (MDEV-23886)
Several fixes for MariaDB Enterprise Cluster (Galera) SST scripts. (MDEV-20580, MDEV-25818, MDEV-25759, MDEV-25719, MDEV-15639, MDEV-15371, MDEV-18797, MENT-1170, MDEV-24979, MDEV-21192)
With MariaDB Enterprise Cluster, when wsrep_sst_method=mariadb-backup, MariaDB Enterprise Backup does not inherit server options set by the Environment systemd configuration parameter. (MDEV-24962)
With MariaDB Enterprise Cluster, when wsrep_sst_method=rsync is set and log-bin and/or log-bin-index are set to custom paths, the rsync SST does not copy the binary log index. (MDEV-25978)
The "Condition pushdown into derived table" optimization cannot be applied if the expression being pushed refers to a derived table column, which is computed from an expression that has a stored function call, @session variable reference, or other similar construct. (MDEV-25969)
A query that uses ORDER BY .. LIMIT clause and "Range checked for each record" optimization could produce incorrect results. (MDEV-25858)
An aborted statement is logged in the binary log and replicated to the Replica server. (MDEV-22530)
shows an execution plan different from actually executed (MDEV-25682)
For system-versioned tables, the statement displays the system-invisible row_end column as part of the primary key. (MDEV-16857)
For system-versioned tables partitioned by SYSTEM_TIME, overflowing the partitions leads to incorrect results from . result (MDEV-22247)
For tables, statements that use CASE WHEN .. THEN can result in a syntax error. (MDEV-24760)
For tables, statements that use the JSON_EXTRACT() function in the WHERE clause can result in a syntax error. (MDEV-24517)
For tables, statements that call native functions using remove_str (such as ) fail with the error code. (MDEV-24020)
For tables, server-sided prepared statements (created by and executed by ) incorrectly turn unsigned integer literals into signed integers. (MDEV-25808)
For tables, statements that use the function fail with the error code. (MDEV-24523)
With , the and statements are not logged to the audit log. (MENT-1169)
With MariaDB Enterprise Backup, the position written to the xtrabackup_binlog_info file during the backup is incorrect for replication. (MDEV-23080)
With MariaDB Enterprise Cluster, when wsrep_sst_method=mariadb-backup, a typo in the SST script causes SST failure on the Donor node. (MDEV-26117)
For tables, statements that use DISTINCT do not work properly in some cases. (MDEV-26013)
When is compiled with WolfSSL, the server fails to accept connections using TLS 1.3 and AES-GCM cipher. (MDEV-22221)
system variable default value changed from DEFAULT to "" (empty)
Rocky Linux 8 (x86_64, ARM64 Red Hat Enterprise Linux 8 packages)
SUSE Linux Enterprise Server 12 (x86_64)
SUSE Linux Enterprise Server 15 (x86_64, ARM64)
Ubuntu 20.04 (x86_64, ARM64)
5.9
5.5
5.5
5.5
4.4
{
"connect_event" : "ALL",
"table_event" : ["READ","WRITE",{"ignore_tables" : "mysql.*"}],
"query_event" : ["DDL",{"tables" : "test.t2"}]
}tail: cannot open 'mysql-bin.index' for reading: No such file or directoryInnoDB: WSREP: referenced FK check fail: Lock wait index `PRIMARY` table `schema`.`child_table`4.9
4.9
4.9
N/A (Critical)
#1:
MariaDB CVEs are assigned a word rating instead of a CVSS base score. See the MariaDB Engineering Policy for details.
Galera wsrep library updated to 26.4.6 in MariaDB Enterprise Cluster.
In alignment with the MariaDB Engineering Policy, this release does not include CentOS 6.x and RHEL 6.x packages.
The audit plugin (not ) did not log proxy users. The new plugin version 2.0.3 introduces an event sub-type PROXY_CONNECT for event type CONNECT. (MDEV-19443)
On connect, if a proxy user is used, an extra line will be logged: TIME,HOSTNAME,user,localhost,ID,0,PROXY_CONNECT,test,plug_dest@%,0
Better MariaDB GTID support for the option. ()
New global variable ()
The new parameter --include-unsupported for the script mariadb_es_repo_setup can be used to enable a repository of unsupported packages in the repository configuration. The repository currently includes the CONNECT Storage Engine. The storage engine can be installed by yum install MariaDB-connect-engine or apt-get install mariadb-plugin-connect-engine (MENT-1003)
Back port of a MariaDB Server 10.5 feature to not acquire record locks when covering table locks exist. (MENT-403)
Change by default. ()
did not log proxy users. The new plugin version 2.0.3 introduces an event sub-type PROXY_CONNECT for event type . (MENT-977)
On connect, if a proxy user is used, an extra line will be logged: TIME,HOSTNAME,user,localhost,ID,0,PROXY_CONNECT,test,plug_dest@%,0
The event type can also be used in filters "connect_event": ["CONNECT","DISCONNECT","PROXY_CONNECT"]
Performance improvements for comparisons of temporal data types with temporal literals. (MDEV-23551)
Performance improvements for comparisons of temporal data types. ()
Data corruption possible for encrypted tables if the non-default option is used. (MENT-910)
Temporary tables created by the user or the system can overwrite existing files on creation. (MDEV-23569)
Table can disappear after command if is used before altering a child table to remove a primary key. (MDEV-22934)
Server crashes on an instant ALTER TABLE .. MODIFY of a column from "not null" to "null". A virtual column must exist in the table. ()
One instant including multiple RENAME for indexes can corrupt the index cache. ()
A rolling upgrade for from 10.3 to 10.4 can result in data loss. ()
DELETE .. FOR PORTION OF statement accepts non-constant FROM .. TO clause. This contradicts the documentation and is inconsistent with the behavior of the statement. ()
persistent stats analyze forces full scan which results in a lock crash. (MENT-1024)
hang on with error message Semaphore wait has lasted > 300 seconds. (MENT-1007)
Server crash can happen on filesort with a setting for to a value lower than the default of 64 (MDEV-24033)
Potential stack overflow in fulltext search with a complex MATCH .. AGAINST string. ()
mariadb-backup can hang if the server goes idle after a particular kind of redo log write. ()
A server crash can occur when encryption is enabled for temporary tables () and queries use window functions. ()
A crash of MariaDB Server is possible when binary logging is activated, caused by improper raising of an error or replication checksum. ()
assertion on after ALTER-TABLE|ALTER TABLE .. DISCARD TABLESPACE ()
Server crashes after failed attempt to create unique key on virtual column. ()
Possible server crash when using an index on a spatial data type with InnoDB. ()
Possible server crash when a string function is used for a column of type and the string function is used in a subquery which is returning a row. ()
node can crash on high , , or load from many connections executed on the same table with foreign keys. ()
Server crashes if a query is executed on an table with a foreign key where the foreign key was removed while using . This case should result in an SQL error. ()
Recursive procedure call ends with a crash instead of SQL error. ()
fails to open the table during removal of VIRTUAL column DDL while using , due to lack of referenced index. ()
Server crash when altering a table after its tablespace has been discarded already. ()
caused a variety of non-determinism failures if the given position did not exist. ()
SET GLOBAL ``replicate_do_db = DEFAULT causes a crash. ()
JSON_MERGE_PATCH(json_doc, json_doc [, json_doc] ...) can crash if the first parameter is set to NULL and the second is not valid JSON. ()
Server crashes after with ON DELETE SET NULL for foreign key and a virtual column in index. ()
Server can crash on a prepared statement executed via . ()
Crash on on a table that contains indexed virtual columns. ()
Possible server crash for queries using the window function ()
Server crash can occur when is used. ()
Possible crash when using Spider Tables and partitions. ()
crashes. (MENT-1011)
node crash with Galera message Assertion server_state_.rollback_mode() == wsrep::server_state::rm_async' failed`. in the error log. (MENT-937)
Galera node crashes or hangs during IST if the connection between donor and joiner is unstable or if cluster configuration changes take place at the same time. (MENT-514)
crash if bulk updates are executed on Galera. ()
Possible server crash with executed on a system versioned table, if variable system_versioning_asof was set to a value of type instead of . ()
Server crash when SELECT WSREP_LAST_SEEN_GTID() while Galera replication is not enabled (wsrep-on=OFF). ()
Server crash if function FORMAT(num, decimal_position[, locale]) is used with a decimal_position > 30. ([MDEV-23415](https://jira.mariadb.org/browse/MDEV-23415))
Multiple calls to a Stored Procedure from another Stored Procedure crashes server. ()
Server crash when an invalid is set. ()
Server hang if TABLE LOCK is used after BACKUP LOCK was used. ()
Server crash on table updates using FOR PORTION OF ()
Assertion on executing with a prepared statement using when is on and is TOI ()
Server crash if a transaction is started with SET SESSION wsrep_on=1, but the global is 0 ()
crash when used with sharding and XA, and (default). ()
node can crash with an error message WSREP: MDL BF-BF conflict in the error log. The error is related to tables with foreign keys and running or on them. ()
Defining a view with SQL syntax ISNULL(ID)=0 incorrectly returns a syntax error. (MENT-1015)
reports an error that it cannot find an Aria log file './aria_log.00000000' (MENT-907)
failure for incremental backups. (MDEV-24026)
Aborting a query on an table with does not show an SQL error message, if the query could not be aborted. ()
Optimizer has chosen an inefficient plan, if a multi-component index, a second index, and a WHERE or ON clause with conditions over these indexes are used. ()
Some rounding has been done in an unexpected way for decimal numbers. ()
Server crashes after changing at runtime via a statement. ()
Creating a view removes parentheses on expressions from the , which results in wrong results. ()
mysql_tzinfo_to_sql under is slow. ()
UDF cannot be uninstalled if the UDF library file doesn't exist. ()
with type can return an unexpected result, if the given value for "expr" includes many leading zeros. ()
replication broken if only one timezone is loaded. ()
SST donation fails, FLUSH TABLES WITH READ LOCK times out. ()
Memory leaks possible after with FOREIGN KEY ()
SST fails for if data-directory has lost+found directory. ()
caused a variety of non-determinism failures if the given position did not exist. ()
Linux AIO returned OS error 22 if parameters set to innodb_flush_method O_DIRECT and (default). ()
CREATE OR REPLACE TRIGGER in not replicating, if a trigger with the same name already exists. ()
mysqld_multi no longer works with different server binaries. ()
Possible error for incremental backup for encrypted tablespaces. ()
Possible slow server start and stop if full text indexes are used. ()
The parentheses in a VIEW can be defined incorrectly for a combination of = and BETWEEN ()
ER_BASE64_DECODE_ERROR upon replaying binary log. ()
Several IPv6 issues with powered by Galera. (, , , , )
Subquery on fails with error message. (MENT-1016)
A AUTO_INCREMENT does not increment with compound primary key on partitioned table. (MENT-997)
CREATE TEMPORARY TABLE .. LIKE () returns error if unique index is defined in the table. ()
CREATE .. SELECT can result in empty result on join versioned table. ()
ErrorERROR 4142 (HY000): SYSTEM_TIME partitions in table t1 does not support historical query upon querying a view, when that view is selecting from the versioned table with partitions. It only happens if the view itself was created using FOR SYSTEM_TIME ALL ()
Disk space not reused for Blob in data file. ()
will not dump sequence definition details on --no-data dump. ()
fails to validate corruption on a table that was corrupted by a bug related to instant ADD or DROP (fixed in MariaDB Enterprise Server 10.3.17, 10.4.7). ()
Subquery execution not terminated after LIMIT ROWS EXAMINED is exceeded. ()
Deadlock between BACKUP STAGE BLOCK_COMMIT and parallel replication. ()
Possible memory leak in galera library. ()
Wrong result of MIN(time_expr) and MAX(time_expr) with GROUP BY ()
Syntax error results in misleading message on about missing system table mysql.proc ()
FORMAT(num, decimal_position [, locale]) where decimal position is 0 or 38 and num is DECIMAL(38,38) returns incorrect results. ()
A query result includes a data row twice depending on the WHERE clause used, if partitioning is used. ()
Assertion after ROLLBACK AND CHAIN ()
mariadb_es_repo_setup curl failed on Ubuntu Focal if ca-certificates is not installed. Now it will prompt an error about missing ca-certificates (MENT-971)
system variable default value changed from ON to OFF
system variable added
command-line option added
system variable maximum value changed from 200 to 1048576 to 1048576
In alignment with the enterprise lifecycle, MariaDB Enterprise Server 10.4.17-10 is provided for:
Red Hat Enterprise Linux 7
Red Hat Enterprise Linux 8
CentOS 7
CentOS 8
Debian 9
Debian 10
SUSE Linux Enterprise Server 12
SUSE Linux Enterprise Server 15
Ubuntu 16.04
Ubuntu 18.04
Ubuntu 20.04
Microsoft Windows
Some components of MariaDB Enterprise Server might not support all platforms. For additional information, see MariaDB Corporation Engineering Policies.
In alignment with the MariaDB Engineering Policy, this release does not include CentOS 6.x and RHEL 6.x packages.
CVE (with cve.org link)
CVSS base score
6.5
5.5
5.5
5.5
5.5
5.5
4.4
Galera updated to 26.4.11
The maximum values for and have been changed from 80000000 to 1099511627776 (1 TB). (MENT-1428)
On Windows, is enabled by default. (MDEV-18439)
New system variables have been added for the HashiCorp Key Management Plugin: (MENT-864)
hashicorp_key_management_cache_timeout defines the time (in milliseconds) after which the value of the key stored in the cache becomes invalid, and an attempt to read this data causes a new request to be sent to the vault server. If the value is 0, then the keys will always be considered invalid, but they are still used if the vault server is unavailable and hashicorp_key_management_use_cache_on_timeout is enabled. By default, the value is 60000 (1 minute).
hashicorp_key_management_cache_version_timeout defines the time (in milliseconds) after which the information about latest version number of the key (which is stored in the cache) becomes invalid and an attempt to read this information causes a new request to be sent to the vault server. If the value is 0, then information about latest key version numbers always considered invalid, but they are still used if the vault server is unavailable and
Columns in some INFORMATION_SCHEMA tables are erroneously declared with DEFAULT clauses, which is not compliant with the SQL standard. (MDEV-18918)
Consequently, when sql_mode=EMPTY_STRING_IS_NULL is set, queries like CREATE TABLE .. SELECT .. FROM INFORMATION_SCHEMA... could encounter replication errors like the following:
When an statement changes the order of indexes in a MyISAM or Aria table using the INPLACE algorithm, the table can become corrupt. (MDEV-25803)
When is written to the binary log, the statement is not flagged as DDL, which causes the replica servers to execute the statement in an unsafe way if parallel replication is enabled. (MDEV-27365)
After upgrading from MariaDB 10.3 or earlier, the names of some triggers can appear empty, and the trigger can't be dropped. (MDEV-25659)
When a FULLTEXT index is added to an InnoDB table with ALGORITHM=INPLACE and the indexed column uses the tis620 character set, the server can crash with a segmentation fault (signal 11). (MDEV-24901)
When MariaDB Server is used on the ARM architecture, which uses a weak memory model, an internal hash table implementation can cause the server to crash with a segmentation fault (signal 11). (MDEV-27088)
When wsrep_sst_method=mariadb-backup and are set with MariaDB Enterprise Cluster, powered by Galera, the joiner node fails to perform an SST. ()
The SST log contains the following message related to the failure:
When --stream=xbstream is set, MariaDB Enterprise Backup can hang on lock acquisitions due to a deadlock. (MDEV-26558)
When a stored procedure is defined with a query that contains a set function, and the set function's only argument is an outer reference to a column of a mergeable view, a derived table, or a CTE, the second execution of the stored procedure can cause the server to crash. (MDEV-25086)
When a derived table is created for certain queries that use subqueries over Views or CTEs, the server can crash with a segmentation fault (signal 11). (MDEV-25631)
When a stored procedure uses a cursor to run a query that requires an internal temporary table (such as queries containing an ORDER BY clause), the server can crash due to a segmentation fault (signal 11). ()
Server can crash if a CTE or derived table is not used by the query. ()
When is set and a query is executed that references a derived table, the server can crash while writing the query's execution plan to the slow query log. ()
When a stored procedure or a prepared statement is used to execute a query that performs a join which compares a GEOMETRY column with a different data type, executing the stored procedure or prepared statement twice can cause the server to crash. ()
When a system versioned table is created with and , the server can crash. ()
When a system-versioned table is partitioned by SYSTEM_TIME, executing causes the server to crash. ()
When the following conditions are met, executing a prepared statement twice can cause the server to crash: ()
The system variable must be set to some value n.
The query must contain an IN(...) clause with more than n string literals.
After completing a successful SST with MariaDB Enterprise Cluster, on the donor node still says 'Donor/Desynced'. ()
With MariaDB Enterprise Cluster, * when is executed on a view that references , the server can crash. ()
When is used to instantly add columns in the middle of an InnoDB table, and then the tablespace is exported with , and then the tablespace is re-imported with , the server can crash. ()
When is set, the server can crash if an index on an InnoDB table is used to check a condition that can evaluate to NULL. ()
When a table uses a column, the server can crash with an assertion failure. ()
In the MariaDB error log, the following error message could be written about the assertion failure:
With MariaDB Enterprise Cluster, * when a statement that defines a Foreign Key constraint is replicated to other cluster nodes, the nodes could apply the statement in parallel with other DML statements that affect the Foreign Key constraint, which causes the node to fail with an assertion failure. (MDEV-27276)
With MariaDB Enterprise Cluster, * when two transactions delete a row from two separate InnoDB tables in parallel and a foreign key causes a delete to cascade for both transactions to the same row in a third table, the server can crash with an assertion failure. (MDEV-26803, MDEV-26298)
In previous releases, this issue could be avoided by setting wsrep_slave_threads=1.
In the MariaDB error log, the following error message about the assertion failure could be written:
With MariaDB Enterprise Cluster, * when a node tries to write to the and wsrep_trx_fragment_size is greater than 0, the server can crash with an assertion failure. (MDEV-27338)
In the MariaDB error log, the following error message about the assertion failure could be written:
When a multi-byte character set is used, the last character of a column can be truncated, which makes it appear as a question mark ('?). (MDEV-24335)
Subquery using the ALL keyword on columns produces a wrong result. (MDEV-27098)
Subquery using the ALL keyword on columns produces a wrong result. (MDEV-27072)
When float literals are defined using scientific notation and the token also contains certain special characters, the parser incorrectly parses the float value and completely drops it from the request. ()
When a double-encapsulated CTE query calls a function which reads a table that has been aliased in the CTE query, the server incorrectly raises an error with the error code. ()
When a CTE is used in a subquery of a statement, the server incorrectly raises an error with the ER_NO_DB_ERROR error code. ()
When MariaDB Enterprise Cluster performs an SST, the SST scripts incorrectly try to read as a path to a directory of TLS CA certificates instead of using for that purpose. ()
When MariaDB Enterprise Cluster performs an SST, the SST scripts do not always interpret correctly. ()
When an index is used for an ORDER BY .. LIMIT query, the optimizer does not disable the Range Checked for Each Record optimization. ()
When is set, the optimizer can incorrectly choose to merge an index that does not help, because the query conditions require the full index to be scanned. ()
When the system variable is set, MariaDB Connector/C and the do not interpret MariaDB Server's extended metadata properly, which can cause results from some to be right-aligned. ()
When an INSERT .. SELECT statement selects from and inserts into the same table, rows are counted twice, which can cause row numbers to be reported incorrectly in error messages. ()
When a replica server's relay log is rotated, Seconds_Behind_Master in can temporarily show an incorrect value that is very high. ()
The collation column in the table is incorrectly read as NULL. (MDEV-4621)
When a join performs a comparison between an expression that uses a case-insensitive collation and an ENUM column that uses a binary collation, the comparison uses the wrong collation, which can cause results to be incorrect. (MDEV-26129)
When # is changed dynamically with , InnoDB does not enforce the minimum value that is enforced on startup, which can result in an impossibly small buffer pool with some values of . (MDEV-27467)
When the function is used in some queries (such as queries using UNION ALL), database names can be truncated to 34 characters, even though database names can have up to 64 characters. (MDEV-27544)
When the option is disabled, such as * when or is set, InnoDB still allows symbolic links and .isl files to be created if tables have the DATA DIRECTORY option. ()
When CREATE TABLE t1 LIKE t2 is executed and the t2 table is a partitioned table that uses the MyISAM or Aria storage engines and has the DATA DIRECTORY option defined for partitions, the operation fails with a file system error. ()
When is set, some window functions incorrectly raise an error with the error code. ()
When the function is called with values from a subquery, the output is not always returned as the JSON data type. ()
When a system-versioned table is partitioned by can incorrectly return an error. ()
The lateral derived optimization is not disabled for queries that use WITH ROLLUP, which causes queries that use GROUP BY to return incorrect results. ()
When is set, queries that use the split optimization can return the wrong results. (, )
When a row is deleted from an InnoDB table, and then a new row with the same key is inserted into the table by a different transaction, InnoDB's MVCC code can incorrectly hide the new row from transactions that should see the changes: (MENT-1414)
Consequently, queries can try to insert another new row with the same key, which results in an error with the error code.
When a replica server has set to 'optimistic' or 'aggressive', this can result in the following error in :
With MariaDB Enterprise Audit, prepared statements can't be used to enable audit logging. (MENT-379)
In previous releases, using a prepared statement to set the server_audit_logging system variable would fail with the following error message:
When a proxy user is used for authentication, the server checks the proxy user account for the following security controls: (MDEV-26339)
SSL/TLS requirements
Account locking
Password expiration
Starting with this release, the server checks the original user account for the security controls mentioned above.
When is set with MariaDB Enterprise Cluster, is not replicated to other nodes as DDL. ()
With MariaDB Enterprise Cluster, a race condition in group commit logic could cause cluster nodes to apply transactions in the wrong order, which could cause the server to fail with an assertion. ()
In the MariaDB Error Log, the message about the assertion failure could look similar to the following:
With the default , the optimizer could sometimes produce worse execution plans than with , except when is set. (MDEV-25830)
When wsrep_sst_method=mariadb-backup is set, SSTs for MariaDB Enterprise Cluster could fail after upgrading to MariaDB Enterprise Server 10.4 if MariaDB Enterprise Backup is not manually upgraded. (MDEV-19815)
When the mysql.AddGeometryColumn and mysql.DropGeometryColumn stored procedures use the old default DEFINER = 'root@localhost', [mariadb-upgrade##](https://app.gitbook.com/s/SsmexDFPv2xG2OTyO5yV/clients-and-utilities/mariadb-upgrade) does not alter them to use the new defaultDEFINER = 'mariadb.sys@localhost'. ([MDEV-27124](https://jira.mariadb.org/browse/MDEV-27124))
This release discontinues support for MariaDB Enterprise ColumnStore 1.4 in MariaDB Enterprise Server 10.4. (MENT-1433)
MariaDB recommends using MariaDB Enterprise ColumnStore 6 in MariaDB Enterprise Server 10.6 or MariaDB Enterprise ColumnStore 5 in MariaDB Enterprise Server 10.5.
ER_VERS_NOT_ALLOWED error code added
system variable minimum value changed from 5242880 to 2097152
system variable dynamic changed from No to Yes
system variable maximum value changed from 80000000 to 1099511627776``
system variable dynamic changed from No to Yes##
system variable maximum value changed from 1600000000 to 1099511627776
mysql_upgrade command-line option added
mysqld command-line option added
mysqld command-line option added
mysqld --rocksdb-ignore-datadic-errors command-line option added
system variable added
In alignment with the enterprise lifecycle, MariaDB Enterprise Server 10.4.24-15 is provided for:
CentOS 7 (x86_64)
Debian 10 (x86_64, ARM64)
Microsoft Windows (x86_64) (MariaDB Enterprise Cluster excluded)
Red Hat Enterprise Linux 7 (x86_64)
Red Hat Enterprise Linux 8 (x86_64, ARM64)
Rocky Linux 8 (x86_64, ARM64 Red Hat Enterprise Linux 8 packages)
SUSE Linux Enterprise Server 12 (x86_64)
SUSE Linux Enterprise Server 15 (x86_64, ARM64)
Ubuntu 20.04 (x86_64, ARM64)
Some components of MariaDB Enterprise Server might not support all platforms. For additional information, see MariaDB Corporation Engineering Policies"..
CVE (with cve.org link)
CVSS base score
5.5
[mariadb]
loose_hashicorp_key_management_cache_timeout=120000
loose_hashicorp_key_management_cache_version_timeout=120000Error 'Invalid default value for 'TABLE_NAME'' on query. Default database: 'test'. Query: 'CREATE TABLE `t1` (`TABLE_NAME` varchar(64) CHARACTER SET utf8 NOT NULL DEFAULT ''mariadb-backup: The option "innodb_force_recovery" should only be used with "--prepare".
mariadb-backup: innodb_init_param(): Error occurred.Assertion `(old_top == initial_top (av) && old_size == 0) || ((unsigned long) (old_size) >= MINSIZE && prev_inuse (old_top) && ((unsigned long) old_end & (pagesize - 1)) == 0)' failed.int wsrep::client_state::bf_abort(wsrep::seqno): Assertion `mode_ == m_local || transaction_.is_streaming()' failed.
[ERROR] mysqld got signal 6 ;int wsrep::client_state::after_row(): Assertion `state_ == s_exec' failed.
[ERROR] mysqld got signal 6 ;Last_Errno: 1062
Last_Error: Error 'Duplicate entry 'VALUE' for key 'KEY_NAME'' on query. Default database: 'DATABASE_NAME'. Query: 'INSERT INTO ..'ERROR 1 (HY000): Logging cannot be enabled.void trx_rseg_update_wsrep_checkpoint(trx_rsegf_t*, const XID*, mtr_t*): Assertion `xid_seqno > wsrep_seqno' failed.
[ERROR] mysqld got signal 6 ;hashicorp_key_management_use_cache_on_timeoutFor maximum flexibility, both of the new system variables can be configured with the loose prefix:
The query must require character set conversions.
This twelfth release of MariaDB Enterprise Server 10.4 is a maintenance release. This release includes a variety of fixes.
MariaDB Enterprise Server 10.4.19-12 was released on 2021-06-14.
CVE (with link)
CVSS base score
New function calculates the spherical distance between two geometries (point or multipoint) on a sphere. ()
Galera updated to 26.4.8
Issue deprecation warnings for values none, innodb, strict_none, strict_innodb ()
fails to rename a column in table and causes server to crash. table is not accessible after restart. ()
Table corruption ER_NO_SUCH_TABLE_IN_ENGINE or ER_CRASHED_ON_USAGE after ALTER on table with foreign key. ()
deletes the current source file after a No space left on device error, before exiting. Only the incomplete target file is still available. ()
Possible hang when or is used with and a multi-master setup ()
Possible memory corruption with when inserting values bigger than 4096 bytes into variable-length fields (, , , and related types). ()
fails on compressed tables. ()
SUMcolumn from a derived table returns invalid values. ([MDEV-23291](https://jira.mariadb.org/browse/MDEV-23291))
returns an incorrect result. ()
Incorrect behavior of when it is executed as a prepared statement. ()
Query returns a
Missing libsepol dependency on SLES 12 and SLES 15. (MENT-1163)
caching_sha2_password.so isn't included in Debian packages. ()
command-line option added
mariadb_repo_setup --skip-check-installed command-line option added
function added
In alignment with the , MariaDB Enterprise Server 10.4.19-12 is provided for:
CentOS 7 (x86_64)
Debian 10 (x86_64, ARM64)
Microsoft Windows (x86_64) (MariaDB Enterprise Cluster excluded)
Red Hat Enterprise Linux 7 (x86_64)
Some components of MariaDB Enterprise Server might not support all platforms. For additional information, see .
MariaDB Enterprise Server 10.4.31-21 is a maintenance release of . This release includes a variety of fixes.
MariaDB Enterprise Server 10.4.31-21 was released on 2023-09-11.
has been backported. (MENT-1853)
The JSON_OVERLAPS() function can be used to compare two JSON documents to determine if they have any key-value pairs or array elements in common.
has been backported. (MENT-1796)
The JSON_SCHEMA_VALID() function can be used to validate a JSON document against a JSON schema, as documented by the .
This function can also be used in a CHECK constraint to verify that JSON documents are only stored in the database if they include required items and that the values are within a given range and length.
The package for the cracklib_password_check plugin includes an SELinux policy, allowing the plugin to work with SELinux. ()
With Optimizer Trace, a sel_arg_alloc_limit_hit record is written when MAX_SEL_ARGS is reached. ()
MAX_SEL_ARGS
ANALYZE FORMAT=JSON output includes InnoDB statistics. ()
For example:
Slow query log output includes InnoDB engine information. ()
InnoDB engine information output is enabled with --log-slow-verbosity=innodb
Sample output:
Engine_time is the time in milliseconds spent inside engine calls.
Page_* variables are supported for the InnoDB storage engine.
For the Spider storage engine, the default values and behavior of some system variables have changed: ()
With parallel replication, in some rare cases, when the sequence of FLUSH TABLE WITH READ LOCKS, UNLOCK TABLES, and STOP REPLICA is executed, data can be lost on the replica. ()
With the Aria storage engine, when Aria encryption is enabled and used, but an encryption plugin is not loaded, the server can crash. ()
With Galera Cluster, when wsrep_sst_donor and wsrep_cluster_address are set to NULL rather than an empty string, the server can crash. ()
When optimizer_switch='optimize_join_buffer_size=off' is set, the server can crash. (
For a System Versioned table with non-versioned columns, if the initial INSERT includes a versioned column, an "on duplicate key update" for the non-versioned column generates a history record. ()
With the Spider storage engine, setting a system variable overrides the value set as a table parameter. ()
The "pam_user_map" module does not correctly handle usernames or group names containing the "@" character. ()
With partitioning, possible slow down of queries. ()
system variable maximum value changed from 18446744073709551615 to 1152921504606846975 ()
system variable minimum value changed from 4096 to 16376 ()
error code added (MENT-1796)
system variable default value changed from -1 to 0 ()
system variable default value changed from -1 to 2 ()
system variable default value changed from -1
In alignment with the , MariaDB Enterprise Server 10.4.31-21 is provided for:
CentOS 7 (x86_64)
Debian 10 (x86_64, ARM64)
Microsoft Windows (x86_64) (MariaDB Enterprise Cluster excluded)
Red Hat Enterprise Linux 7 (x86_64)
Some components of MariaDB Enterprise Server might not support all platforms. For additional information, see
Improved TLS/SSL error reporting. (MDEV-21730)
DELETE HISTORY may delete current data on . (MDEV-25468)
Encrypted transactional tables remain corrupt after crash recovery, automatic repair does not work. (MDEV-17913)
check_grant upon invoking function with enabled. (MDEV-25242)MariaDB Client crashes when is set and is undefined. (MDEV-24879)
Possible Server crash when . Only seen when using a table space per table and if the tablespace size is increased at the time of the drop. (MDEV-20648)
Possible server hang with and indexed virtual columns after an error with , , on virtual columns. (MDEV-24786)
MariaDB Enterprise Cluster conflict resolution issues. (MDEV-24923)
Index count mismatch due to aborted FULLTEXT INDEX (MDEV-25200)
MariaDB Enterprise Cluster node crashes when inserting a row into a table that contains a virtual column and does not have a primary key. (MDEV-25047)
Server crashes when fails to add a new index on a new virtual column and a concurrent connection executes a query that accesses the freed virtual column. (MDEV-24971)
subquery with correlation in ON expression crashes. (MDEV-25407)
Server crashes in row_undo_mod_clust_low upon rollback of read-only transaction. (MDEV-25457)
Server crashes on the second execution of a stored procedure when the stored procedure uses an invalid multi-table statement to update a view. (MDEV-24823)
startup hangs when a recovered transaction exists for the or system tables and a DDL transaction needs to be rolled back. (MDEV-25503)
Server crashes when tries to fetch data from table containing a FULLTEXT INDEX and the table's tablespace was discarded. (MDEV-25536)
Server crashes on when a WHERE condition references a derived table. (MDEV-21603)
Potential hang in purge when virtual indexed columns exist. (MENT-1203)
After or , change buffer entries for secondary indexes are lost on restart. (MENT-1217)
Crash with nested table value constructors. (MDEV-22786)
Server crashes when an aggregate function is called on a table value constructed with the or VALUE() functions. (MDEV-24919)
Server crashes when a statement has a subquery that references a table value constructed with the or VALUE() functions. (MDEV-24910)
Server crashes when a statement has an clause that references the UNION of two table values constructed with the VALUES() or VALUE() functions. (MDEV-24840)
Possible memory corruption or crash if a table definition is evicted from the cache during a transaction commit. (MDEV-24811)
Server crashes when the function is called on a column. (MDEV-22703, MDEV-24958, MDEV-24942)
Server crashes when a statement queries an table and uses a JOIN (MDEV-24929)
Server crash in optimize_schema_tables_memory_usage after from (MDEV-24868)
Server crashes when a FULLTEXT INDEX is added to an table and the tablespace for the table was previously discarded. (MDEV-25070)
Server crashes when the optimizer incorrectly removes a GROUP BY from a subquery, because the column is specified in both the list and the GROUP BY list. (MDEV-24925)
Server crashes when a statement has a subquery in the FROM clause that contains a GROUP BY clause and multiple indexes are used: one index is used to resolve the GROUP BY clause and another index is used for the LATERAL DERIVED optimization. (MDEV-23723)
Crash with .. with non-existing field in ON condition. (MDEV-25206)
Server crashes due to an assertion with multi-master workloads on MariaDB Enterprise Cluster when is disabled and a conflicting transaction is aborted for a higher priority transaction. (MDEV-24954)
Possible hang when KILL CONNECTION or KILL QUERY is used with MariaDB Enterprise Cluster and a multi-master setup. (MDEV-24967)
Possible memory corruption when streaming replication is used for MariaDB Enterprise Cluster. (MDEV-24964)
MariaDB Enterprise Cluster node crashes when the system table is truncated. (MDEV-24865)
MariaDB Enterprise Cluster node crashes when wsrep_provider_options set to NULL (MDEV-24856)
Server crashes when a column is dropped from an table with the INSTANT algorithm. (MDEV-25057)
MariaDB Enterprise Cluster node crashes when CREATE TABLE t1 ( .. ) SELECT .. FROM t2 is executed where t1 is an table and t2 is a non-InnoDB table. (MDEV-21697)
MariaDB Enterprise Cluster node crashes when an uncommitted transaction is replicated using streaming replication while wsrep_on is enabled and the transaction is committed while wsrep_on is disabled. (MDEV-25226)
Server crashes with MariaDB Enterprise Cluster when a non-InnoDB table is locked with the LOCK TABLE statement and a concurrent connections executes that references the same table. (MDEV-22227)
Possible server crash after failing instant on secondary indexes. (MDEV-25360)
Server crashes in thd_clear_errors() (MDEV-23542)
MariaDB Enterprise Backup crashes when called without parameters on Windows. (MDEV-24106)
Server crashes during crash recovery when freed pages exist in the tablespace of an encrypted table. Also affects [[mariadb-backup|MariaDB Enterprise Backup]] during --prepare (MDEV-24792)
MariaDB Enterprise Cluster conflict resolution issues. (MDEV-25579, MDEV-24980, MDEV-25378)
JOINONQuery returns a ER_BAD_FIELD_ERROR error when a Common Table Expression (CTE) contains a UNION (MDEV-24597)
Query returns wrong result when the or aggregate functions are used and the aggregated column is indexed. (MDEV-25112)
Wrong result (extra rows and wrong values) with incremental block nested loop hash. (MDEV-21104)
Query returns wrong results when a JOIN is evaluated using the Block Nested Loop Hash (BLNH) optimization with a compound index. (MDEV-24767)
Server fails to start using mysqld_multi with mysqld_safe options. (MDEV-21039)
Duplicate key may be generated during MariaDB Enterprise Cluster configuration change. (MDEV-24853)
State snapshot transfer (SST) for MariaDB Enterprise Cluster using [[mariadb-backup|MariaDB Enterprise Backup]] fails when the --log-bin option was set on the command-line with no value at server startup. (MDEV-24903)
Race condition between persistent statistics and or TRUNCATE (MDEV-25051)
Race condition between and STATS_AUTO_RECALC (MDEV-10682)
Incorrect message about field length is written to the when is executed on an table. (MDEV-24748)
No error is returned when the optimizer removes a redundant part of a subquery that contains an unknown table alias. For example, if the optimizer removes a redundant GROUP BY clause from an subquery, unknown table aliases in the redundant part are ignored. (MDEV-23449)
Selectivity shown with in field "filter" is incorrect for columns. (MDEV-22583)
Histogram statistics are used even with optimizer_use_condition_selectivity=3 (MDEV-19474)
shows nonsensical value for key_len with type=index (MDEV-11172)
SSL connection fails when server and client certs are signed by same CA. (MDEV-23740)
Wrong function name in error messages upon call. (MDEV-25272)
[[mariadb-backup|MariaDB Enterprise Backup]] fails --prepare on large backup. (MDEV-24197)
State snapshot transfer (SST) for MariaDB Enterprise Cluster using [[mariadb-backup|MariaDB Enterprise Backup]] fails when the password for the backup user is set via the MYSQL_PWD environment variable. (MDEV-25321)
State snapshot transfer (SST) for MariaDB Enterprise Cluster using [[mariadb-backup|MariaDB Enterprise Backup]] fails when the --innodb option was set on the command-line at server startup. (MDEV-25328)
An extra warning is returned when the EXPLAIN EXTENDED statement is executed in a prepared statement. (MDEV-25108)
Complex query in stored procedure returns wrong results. (MDEV-25182)
wrongly checks for field's default value if AFTER is used. (MDEV-25403)
Incorrect name resolution for subqueries in ON expressions. (MDEV-25362)
When is executed, a race condition between group commit and binary log rotation causes the old binary log file to become obsolete before the group commit has been written to it. (MDEV-24526)
[[mariadb-backup|MariaDB Enterprise Backup]] logs an error instead of a warning when it reads an invalid log block checksum during a --backup. (MDEV-25456)
Rows are wrongly omitted when an index is read using Multiversion Concurrency Control (MVCC). (MDEV-25459)
aborts after failed into table with virtual column. (MDEV-24583)
fails to fetch index type when index mismatch happens. (MDEV-22928)
MariaDB Enterprise Cluster silently enables Monitor output and never disables it when a wsrep slave thread tries to perform a brute-force (BF) kill, but fails due to a long lock wait. (MDEV-25319)
causes "Ignoring data file ... with space ID xxxx, since the redo log references ... with space ID xxxx." for [[mariadb-backup|MariaDB Enterprise Backup]]. (MDEV-25568)
The Replication Heartbeat binary log event (Heartbeat_log_event) uses 4 bytes to store the log position within the current binary log file, so the log position overflows when the binary log file size exceeds 4 GB. (MDEV-16146)
spatial indexes miss large geometry fields. (MENT-1205)
Table alias from previous statement interferes with later commands. (MENT-1200)
statement does not show details about sub-queries when the primary table is a table value constructed with the or VALUE() functions. (MDEV-24936)
JOIN of a materialized derived table returns wrong result when the split_materialized optimization is enabled. (MDEV-25128)
Uninitialized value upon CREATE .. SELECT .. VALUE and variety of resulting errors with different engines. (MDEV-24710)
Dropping primary key column from a always fails with Error 1072 (MDEV-24690)
ALTER TABLE .. ADD COLUMN .. AS ROW START returns misleading ER_VERS_DUPLICATE_ROW_START_END error. (MDEV-25172)
Unexpected ER_DUP_ENTRY error when the Primary Key column is dropped from a . (MDEV-25327)
doesn't work properly with semi-sync replication. (MDEV-24773)
Sequence created by one connection remains invisible to another. (MDEV-24545)
routine_definition in loses tablename if it starts with an _ and is not backticked. (MDEV-25501)
JOIN of a derived table using an aggregation function returns incorrect results. (MENT-1210)
Server temporarily consumes extra 4 GB of memory every time the table is queried. (MDEV-24975)
not replicated with MariaDB Enterprise Cluster. (MDEV-24956)
The setting can result in unexpected warnings when using MariaDB Enterprise Cluster. (MDEV-21402)
The statement fails with ER_MUST_CHANGE_PASSWORD when the statement is executed in a prepared statement and the user's password is expired. (MDEV-25197)
MariaDB Enterprise Cluster FLUSH SSL command doesn't reload wsrep cert. (MENT-1089)
State snapshot transfer (SST) for MariaDB Enterprise Cluster using causes shutdown of donor node to fail. (MDEV-25423)
returns The connect info 'tab' for table is too long when creating a Spider Table. (MDEV-22265)
garbd has connection issues. (MENT-1168)
Galera startup log shows data load error when enabling server audit log through configuration file. (MENT-1196)
Rocky Linux 8 (x86_64, ARM64 Red Hat Enterprise Linux 8 packages)
SUSE Linux Enterprise Server 12 (x86_64)
SUSE Linux Enterprise Server 15 (x86_64, ARM64)
Ubuntu 20.04 (x86_64, ARM64)
4.9
4.9
WHEREFor example:
These variables used a value of -1 (the default) to indicate that Spider would use the default table value, and this value was not user visible.
Spider table parameters could set values, but these values would be overridden with the system variable value if the system variable was set to a value other than -1.
Starting with this release:
The default value for these system variables has been updated to reflect the actual default table value, rather than -1.
Where a value is set by a table parameter, this value overrides the system default and the value set by the Spider system variable.
If a table parameter is not set, the Spider system variable's value is used. This behavior is unchanged.
See "Interface Changes" for a full list of updated default values.
When executing a SELECT query using an index for GROUP BY and filesort, the server can crash. (MDEV-30143)
With MariaDB Connector/C, when the mysql_list_fields() function is called against a view, the server can crash. (MDEV-30159)
With the Aria storage engine, changing aria_sort_buffer_size settings to huge numbers and executing INSERT/UPDATE can result in a crash. (MDEV-28054)
With parallel replication, when a replica thread gets killed, the replica node can crash. (MDEV-31448)
With the InnoDB storage engine, when slave_parallel_mode is optimistic, and slave_parallel_threads is greater than 0, an ALTER SEQUENCE can fail with an out-of-order binlog error if the SEQUENCE uses InnoDB. (MDEV-31503)
Prior to this release, the following error can be raised:
Last_Error: Error 'An attempt was made to binlog GTID 0-1-100, which would create an out-of-order sequence number with existing GTID 0-1-100 and gtid stric mode is enabled' on query. Default database: 'test'. Query: 'alter sequence s1 restart with 1' will be shown.``
With replication, when gtid_seq_no is set to DEFAULT in a session, the server can crash. (MDEV-31723)
With the InnoDB storage engine, when a BINARY(0) or VARBINARY(0) column in an InnoDB table is indexed, the server can crash. (MDEV-19216)
Setting session_track_system_variables globally to an invalid value can cause the server to crash. (MDEV-25237)
Replication from an older MariaDB Server version to a newer MariaDB Server version can break, and the server may crash. (MENT-1935)
A mismatch in hash values was caused by the use of different hash functions, causing rows in tables having explicit or implicit unique hash indexes to be treated as different rows between different versions of MariaDB Server, even though the data in the rows was the same.
Stored routines with ROW variables set by subselects can produce incorrect results. (MDEV-31250)
Integer multiplication, DIV, MOD, or ROUND/TRUNCATE could return unexpected results when an argument is evaluated as -9223372036854775808 (MDEV-30932)
With Galera Cluster, creating a TEMPORARY SEQUENCE can cause inconsistency. (MDEV-31335)
With Galera Cluster, the state of the cluster can only be retrieved from the primary component. (MDEV-21479)
information_schema.PARAMETERS can include outdated data when a stored routine is changed in one session while the stored routine is being used in a second session. (MDEV-31064)
Queries that use multiple RANK window functions can produce the wrong result. (MDEV-20010)
Queries that use the < "less than" operator to compare a string with a prefixed BLOB key produce the wrong result. (MDEV-31800)
Recursive CTE execution is interrupted without errors or warnings when max_recursive_iterations is reached. (MDEV-31214)
Starting with this release, a warning occurs when max_recursive_iterations is reached: Warning 1931 Query execution was interrupted. The query exceeded max_recursive_iterations = 1000. The query result may be incomplete.
On Microsoft Windows, when lower_case_table_names=2, SHOW TABLES does not work properly. (MDEV-30765)
When the system is busy, STOP REPLICA can take a long time. (MDEV-13915)
With parallel replication, Seconds_Behind_Master can show a wrong value. (MDEV-30619)
With replication for System Versioned tables, having a parent table and a child table WITH SYSTEM VERSIONING, where the child table has a Foreign Key CASCADE, generates orphan rows on the replica. (MDEV-31313)
mariadb-dump --force can stop with the error Couldn't execute 'SHOW CREATE FUNCTION object': even though --force should cause the error to be ignored. (MDEV-31092)
With the ColumnStore storage engine and Federated storage engine, ANALYZE can return the incorrect value 0 for r_rows (MDEV-29284)
ALTER TABLE .. MODIFY COLUMN can break foreign key constraints and lead to unrestorable dumps. (MDEV-31086)
With the InnoDB storage engine, three concurrent DELETE by a UNIQUE key can cause an unexpected deadlock. (MDEV-10962)
With the InnoDB storage engine, innochecksum fails with a Floating point exception error. (MDEV-31641)
With the HashiCorp key management plugin, possible memory leaks. (MENT-1874)
Using functions MAX() or MIN() with functions ROUND(time), CEILING(time), or FLOOR(time) as an argument can return wrong results. (MDEV-23838)
For transaction precise System Versioned tables, UPDATE can return an unexpected error: ERROR 1761 (23000): Foreign key constraint for table 'xxx', record 'yyy' would lead to a duplicate entry in table 'xxx', key 'PRIMARY' (MDEV-25644)
Assertion const_item_cache == true failed in Item_func::fix_fields when a flow control statement (such as IF()) was used in a generated column. (MDEV-31319)
Creating a table with a foreign key (with a cascade action) defined on a base column of a virtual column is not rejected. (MDEV-18114, MDEV-31322)
Starting with this release, it is no longer possible to create STORED generated columns and CHECK constraints when values of the affected columns can be changed by foreign key constraint actions, such as SET NULL or ON UPDATE CASCADE.
Starting with this release, this results in an error like: ERROR 1901 (HY000): Function or expression 'f_id' cannot be used in the GENERATED ALWAYS AS clause of 'v_id'
Starting with this release, for existing tables with STORED generated columns, SET NULL and ON UPDATE CASCADE are ignored.
error code added (MENT-1796)
error code removed (MDEV-31214)
error code added (MDEV-31214)
ER_QUERY_TIMEOUT error code removed
ER_UNUSED_1 error code added
function added (MENT-1853)
function added (MENT-1796)
system variable maximum value changed from 18446744073709551615 to 1152921504606846975 (MDEV-28054)
0 system variable default value changed from -1 to 100 (MDEV-31524)
system variable default value changed from -1 to 1 (MDEV-31524)
system variable default value changed from -1 to 0 (MDEV-31524)
system variable default value changed from -1 to 16000 (MDEV-31524)
system variable default value changed from -1 to 16000 (MDEV-31524)
system variable default value changed from -1 to 0 (MDEV-31524)
system variable default value changed from -1 to 16000 (MDEV-31524)
system variable default value changed from -1 to 0 (MDEV-31524)
system variable default value changed from -1 to 6 (MDEV-31524)
system variable default value changed from -1 to 2 (MDEV-31524)
system variable default value changed from -1 to 51 (MDEV-31524)
system variable default value changed from -1 to 1 (MDEV-31524)
system variable default value changed from -1 to 0 (MDEV-31524)
system variable default value changed from -1 to 2 (MDEV-31524)
system variable default value changed from -1 to 2 (MDEV-31524)
system variable default value changed from -1 to 1 (MDEV-31524)
system variable default value changed from -1 to 0 (MDEV-31524)
system variable default value changed from -1 to 9223372036854775807 (MDEV-31524)
system variable default value changed from -1 to 0 (MDEV-31524)
system variable default value changed from -1 to 0 (MDEV-31524)
system variable default value changed from -1 to 0 (MDEV-31524)
system variable default value changed from -1 to 1024 (MDEV-31524)
system variable default value changed from -1 to 9223372036854775807 (MDEV-31524)
system variable default value changed from -1 to 0 (MDEV-31524)
system variable default value changed from -1 to 0 (MDEV-31524)
system variable default value changed from -1 to 0 (MDEV-31524)
system variable default value changed from -1 to 1 (MDEV-31524)
system variable default value changed from -1 to 1 (MDEV-31524)
system variable default value changed from -1 to 1 (MDEV-31524)
system variable default value changed from -1 to 32767 (MDEV-31524)
system variable default value changed from -1 to 100 (MDEV-31524)
system variable default value changed from -1 to 600 (MDEV-31524)
system variable default value changed from -1 to 600 (MDEV-31524)
system variable default value changed from -1 to 3 (MDEV-31524)
system variable default value changed from -1 to 10485760(MDEV-31524)
system variable default value changed from -1 to 1024 (MDEV-31524)
system variable default value changed from -1 to 0 (MDEV-31524)
system variable default value changed from -1 to 1 (MDEV-31524)
system variable default value changed from -1 to 0 (MDEV-31524)
system variable default value changed from -1 to 1 (MDEV-31524)
system variable default value changed from -1 to 1 (MDEV-31524)
system variable default value changed from -1 to 2 (MDEV-31524)
system variable default value changed from -1 to 9223372036854775807 (MDEV-31524)
system variable default value changed from 1 to 0 (MDEV-31524)
system variable default value changed from -1 to 1 (MDEV-31524)
system variable default value changed from -1 to 0 (MDEV-31524)
system variable default value changed from -1 to 0 (MDEV-31524)
system variable default value changed from -1 to 9223372036854775807 (MDEV-31524)
system variable default value changed from -1 to 1 (MDEV-31524)
system variable default value changed from -1 to 1 (MDEV-31524)
system variable default value changed from -1 to 2 (MDEV-31524)
system variable default value changed from -1 to 10 (MDEV-31524)
system variable default value changed from -1 to 1 (MDEV-31524)
system variable default value changed from -1 to 0 (MDEV-31524)
system variable default value changed from -1 to 10 (MDEV-31524)
system variable default value changed from -1 to 100 (MDEV-31524)
system variable default value changed from -1 to 3000 (MDEV-31524)
system variable default value changed from -1 to 0 (MDEV-31524)
system variable default value changed from -1 to 0 (MDEV-31524)
system variable default value changed from -1 to 0 (MDEV-31524)
system variable default value changed from -1 to 1 (MDEV-31524)
Rocky Linux 8 (x86_64, ARM64 Red Hat Enterprise Linux 8 packages)
SUSE Linux Enterprise Server 12 (x86_64)
SUSE Linux Enterprise Server 15 (x86_64, ARM64)
Ubuntu 20.04 (x86_64, ARM64)
7.5
7.5
7.5
7.5
7.5
7.5
7.5
7.5
7.5
7.5
7.5
7.5
7.5
7.5
7.5
7.5
7.5
7.5
7.5
7.5
7.5
7.5
7.5
6.5
6.5
6.5
6.5
6.5
6.5
4.9
MariaDB Enterprise Server enables a predictable development and operations experience through an enterprise lifecycle. These new features have been backported after reaching maturity in MariaDB Community Server:
reads data as of specific timestamp from system-versioned tables. (MENT-1457)
Added to check JSON equality. (MENT-1452)
Added to normalize JSON values. (MENT-1456)
Added . (MENT-1451)
Added Enterprise Spider ODBC support. (MENT-1092)
Spider now supports the ODBC wrapper in this release series which was previously supported in MariaDB Enterprise Server 10.5 and 10.6.
Spider/ODBC allows federated access to ODBC resources.
Galera updated to 26.4.12
Spider storage engine refuses attempts to create a temporary table since the engine cannot itself store data and cannot create temporary tables on a remote server. (MDEV-28225)
Status variables Innodb_encryption_key_rotation_list_length, Innodb_num_index_pages_written and Innodb_num_non_index_pages_written were unused and have been removed. (MDEV-28541, MDEV-28537)
Starting with this release, when is set to rsync or mariadb-backup, the sst_max_binlogs SST option can be specified in the [sst] option group in configuration files. This parameter specifies the number of binary log files to be sent to the joiner node during SST. ()
The default value is 0:
Server error messages are available in Chinese. ()
MariaDB ColumnStore support is discontinued for MariaDB Enterprise Server 10.4. (MENT-1433)
When the parser converts a string from the binary character set to a multi-byte character set (such as utf32), an invalid string could be produced. (MDEV-23210)
When rows are inserted into an intermediate temporary table via the , and then the rows are copied from the temporary table to a persistent table, the rows are not written to binary log if is set, which prevents the operation from properly replicating to replica servers. (MDEV-24667)
When is set, can hang. (MDEV-25975)
Starting with this release, the has been removed.
When a replica server's I/O thread receives an incomplete event group from the primary server, the replica server continues writing events to the relay log and does not raise an error. ()
Semisync-replica server recovery fails to rollback a prepared transaction. (MENT-1534)
If a primary is shutdown during an active semi-sync connection during the period when the primary is awaiting an ACK, the primary hard kills the active communication thread and does not ensure the transaction was received by a replica. This can lead to an inconsistent replication state. ()
With MariaDB Enterprise Cluster, powered by Galera, when wsrep_sst_method is set to rsync or mariadb-backup, the donor node does not transfer the correct binary logs to the joiner node with some configurations. (MDEV-27524)
When a window function is used in the global ORDER BY clause of a SELECT statement with a UNION, the statement should be rejected, but the server executes the statement and crashes with a segmentation fault. (MDEV-15208)
When a stored procedure queries a view and uses a for loop, the server can crash with a segmentation fault when the stored procedure is called twice in the same session. ()
When is executed on an encrypted tablespace file using the , innochecksum crashes with a segmentation fault unless the is also specified. ()
When an invalid is used inside of a or statement, the server can crash while parsing the statement. ()
When a table contains a virtual generated column that is defined using the and functions, inserting a row into the table can cause the server to crash with a segmentation fault. ()
When a non-updateable view is defined with ALGORITHM=TEMPTABLE, selecting data from the view can cause the server to crash with a segmentation fault. ()
When a UNION of decimal types is performed in an ORDER BY clause, the server can crash with a segmentation fault. ()
When a stored procedure executes a query that results in a mergeable derived table, the server can crash with a segmentation fault when the stored procedure is called twice in the same session. ()
Querying views can result in mergeable derived tables.
Using subqueries with outer references can result mergeable derived tables.
When is executed with a query that contains a subquery, the server can crash. ()
When a query using a window function with an OVER (PARTITION BY ..) or OVER (ORDER BY ..) clause is executed, the server can crash with a segmentation fault. ()
If the query also uses WITH ROLLUP, this crash is more likely.
If the query's OVER (PARTITION BY ..) or OVER (ORDER BY ..)
When a query contains an outer join expression and a non-correlated subquery that the optimizer determines is low cost, executing the query can cause the server to crash if the optimizer also determines that the inner join expression can be eliminated. ()
With MariaDB Enterprise Cluster, a joiner node's binary logs could be deleted during an Incremental State Transfer (IST), which causes the node to fail to start, because it can not read the binary logs. ()
This issue is confirmed to happen with set to rsync, but it might also occur with other SST/IST methods.
ALTER TABLE on a large InnoDB table can hang. (MDEV-28415)
Online DDL fails while checking for instant alter condition. (MDEV-28060)
With MariaDB Enterprise Cluster (Galera), parallel async replication hangs on a Galera node when slave-parallel-threads greater than 1 is used. (MDEV-27568)
With MariaDB Enterprise Cluster (Galera), possible crash after a conflict of the applier thread with a stored procedure call triggered by the event scheduler. (MDEV-27713)
Server crashes when executing a shutdown statement after starting an XA transaction. ()
Possible server crash during mariadbd initialization if the number of GTIDs added since the last purge of the mysql.gtid_slave_pos tables is greater than or equal to the --gtid-cleanup-batch-size value. ()
Possible server crash if an INSERT .. SELECT or REPLACE .. SELECT statement contains an ON expression in the top-level select and this expression used a subquery with a column reference. ()
When is executed on a sequence, the server raises an ER_BINLOG_UNSAFE_STATEMENT warning, even if is set to ROW or MIXED. (MDEV-24617)
The warning can appear in the MariaDB Error Log as the following:[Warning] Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it uses a system function that may return a different value on the slave Statement: OPTIMIZE TABLE SEQUENCE_NAME
When an or statement uses an clause, the server raises an . ()
The error can appear on the client as the following:You are using safe update mode and you tried to update a table without a WHERE that uses a KEY column
When an uses a subquery inside an clause, the optimizer could incorrectly choose to perform a full table scan (with type: ALL) when a range scan (with type: range) would be more efficient. ()
When a table contains multiple columns with identical values, the values could become corrupt if multi-byte character sets are used. ()
When columns are read from , the server could incorrectly raise an . ()
The warning can appear on the client as the following after executing : Encountered illegal value '' when converting to DECIMAL
With , the parser allows functions to be called using PACKAGE_NAME.FUNCTION_NAME(), but the parser raises a ER_PARSE_ERROR error if the function is called using DATABASE_NAME.PACKAGE_NAME.FUNCTION_NAME(). (MDEV-28166)
When a view is used to update multiple rows of a in a single , the server incorrectly raises a ER_WARN_VIEW_WITHOUT_KEY warning. (MDEV-22973)
The warning can appear on the client as the following after executing : View being updated does not have complete key of underlying table in it
When using with and , events from the primary server's currently active log file are not written to their respective log file specified by . (MDEV-14608)
When a prepared statement is used to execute , a different query plan can be returned on the second execution. ()
When is enabled with semi-synchronous replication, the numbering on packet headers can become out of sync between the primary and replica servers, but the inconsistency does not have any negative impact with release builds of MariaDB Enterprise Server. ()
The server and MariaDB Enterprise Backup can raise unnecessary warnings about tablespace IDs in some scenarios. ()
The warning can appear as the following: InnoDB: Allocated tablespace ID TABLESPACE_ID for DATABASE_NAME/TABLE_NAME, old maximum was 0
This warning can be written to standard output (stdout) when preparing a backup with .
With MariaDB Enterprise Cluster, the joiner node fails to complete an SSwhen specifies a directory different than . ()
When a non-partitioned table using the DATA DIRECTORY clause is converted to a partitioned table, the DATA DIRECTORY clause is silently ignored, and the partitioned table is moved to the default directory. ()
Starting with this release, the server will raise the .
When a table contains an invisible column, does not produce the correct in the backup file. ()
When a Spider table is queried using IF(COUNT() ..), the server can raise an . ()
With MariaDB Enterprise Cluster, State Snapshot Transfers (SSTs) can fail on the donor nodwhen binary logs are enabled. ()
With MariaDB Enterprise Cluster, when contains an IPv6 address and is set to the default value of AUTO, State Snapshot Transfers (SST) can fail. ()
With , replication can break if a system versioned table has been created on the replica via mariadb-dump, if the original table was altered before. ()
mariadb-backup does not detect multi-source replication primary. ()
Master_SSL_Crl shows Master_SSL_CA value in SHOW SLAVE STATUS output. ()
MariaDB Audit plugin produces corrupted log entries for CONNECT events. (MENT-1438)
mariadb-dump does not create a dump where the sql_mode is set correctly for SQL/PL packages. ()
Missing binlog data for INSERT .. ON DUPLICATE KEY UPDATE ()
mariadb-backup prepare fails for incremental backups if a new schema is created after full backup. ()
Optimizer uses all partitions during an UPDATE and ignores partitioning filters. ()
When is executed and is set to MIXED, the server raises an even though the statement is written to the binary log in row-based format. ()
The warning can appear in the as the following: <<sql>>[Warning] Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. INSERT... ON DUPLICATE KEY UPDATE on a table with more than one UNIQUE KEY is unsafe Statement: INSERT INTO TABLE_NAME VALUES (..) ON DUPLICATE KEY UPDATE KEY_NAME = KEY_VALUE<</sql* >>
When INSERT .. ON DUPLICATE KEY UPDATE is executed and binlog_row_image is set to FULL, the server does not write unchanged columns to the binary log. ()
Crash recovery fails if the configured server ID does not match the server ID in the crashed data directory. (MENT-1535)
PAM v2 plugin (auth_pam) produces zombie processes. (MENT-1443)
With MariaDB Enterprise Cluster (Galera), wsrep_incoming_addresses does not include address details. (MENT-1527)
With HashiCorp key management (hashicorp_key_management), dynamic changes to hashicorp_key_management_cache_timeout and hashicorp_key_management_cache_version_timeout system variables are ignored. (MENT-1512)
Galera snapshot transfer fails to upgrade between some major versions. (MDEV-27437)
On Windows, MSI installer does not install client shared libraries. (MDEV-28581)
After upgrade, mysql.plugin table has an entry for Semi-sync Replication, though this former plugin functionality is now built-in. (MDEV-21873)
On RPM-based distributions, the Spider storage engine is distributed as a separate RPM package. (MENT-1092)
In prior releases, Spider's components were installed with the server's RPM package.
Starting with this release, Spider adds unixODBC as a dependency, so Spider has been moved to a separate RPM package to avoid adding new dependencies to the server's RPM package. For users of RPM-based distributions who loaded the Spider plugin with previous ES 10.4 releases, Spider's new RPM package and dependencies must be installed after upgrading to this release.
To install Spider's new package and dependencies on CentOS, Red Hat Enterprise Linux (RHEL), or Rocky Linux: $ sudo yum install MariaDB-spider-engine
To install Spider's new package and dependencies on SUSE Linux Enterprise Server (SLES): $ sudo zypper install MariaDB-spider-engine
When the encryption plugin is loaded, should be used to take a logical backup before all minor and major upgrades due to changes that are not backward-compatible:
Starting with this release, the rejects encryption keys that contain non-digit characters in the hex notation.
If a database is encrypted with encryption keys that only contain digit characters in the hex notation, the encryption keys will continue to work with the new version.
If a database is encrypted with encryption keys that are no longer valid, it is recommended to upgrade by installing the new version to a clean system and restoring a logical backup of the data. However, another alternative is to migrate the system to a new encryption key that only contains digit characters in the hex notation prior to the upgrade. If the alternative route is taken, extra care must be taken to ensure that all encrypted data uses the new encryption key. For help with this process, contact
system variable added
system variable removed
status variable removed
status variable removed
status variable removed
function added
function added
mariadb-backup --sst-max-binlogs command-line option added
mysqld --hashicorp-key-management-check-kv-version command-line option added
mysqld --password-reuse-check command-line option added
mysqld --password-reuse-check-interval command-line option added
mysqld --spider-buffer-size command-line option added
mysqld --spider-wrapper-protocols command-line option added
mariadb-dump --as-of command-line option added
password_reuse_check password_reuse_check.so plugin added
system table added
system variable added
system variable added
information schema table added
SPIDER_WRAPPER_PROTOCOLS ha_spider.so plugin added
In alignment with the enterprise lifecycle, MariaDB Enterprise Server 10.4.25-16 is provided for:
CentOS 7 (x86_64)
Debian 10 (x86_64, ARM64)
Microsoft Windows (x86_64) (MariaDB Enterprise Cluster excluded)
Red Hat Enterprise Linux 7 (x86_64)
Red Hat Enterprise Linux 8 (x86_64, ARM64)
Rocky Linux 8 (x86_64, ARM64 Red Hat Enterprise Linux 8 packages)
SUSE Linux Enterprise Server 12 (x86_64)
SUSE Linux Enterprise Server 15 (x86_64, ARM64)
Ubuntu 20.04 (x86_64, ARM64)
Some components of MariaDB Enterprise Server might not support all platforms. For additional information, see MariaDB Corporation Engineering Policies"..
CVE (with cve.org link)
CVSS base score
7.5
SELECT JSON_OVERLAPS('{"A": 1, "B": {"C":2}}', '{"A": 2, "B": {"C":2}}') AS is_overlap;+---------------------+
| is_overlap |
+---------------------+
| 1 |
+---------------------+SELECT
JSON_DETAILED(JSON_EXTRACT(trace, '$**.setup_range_conditions'))
FROM information_schema.OPTIMIZER_TRACE;[
[
{
"sel_arg_alloc_limit_hit":
{
"alloced_sel_args": 16001
}
}
]
]table": {
"table_name": "t1",
...
"r_engine_stats": {
"pages_accessed": integer,
"pages_updated" : integer,
"pages_read_count" : integer,
"pages_read_time_ms" : double_val,
"old_rows_read" : integer,
},# Pages_accessed: 184 Pages_read: 95 Pages_updated: 0 Undo_rows_read: 1\\
# Pages_read_time: 17.0204 Engine_time: 248.1297
If a binlog does not exist, no binlog will be transferred.
When performing minor and major upgrades on Debian and Ubuntu, a logical backup must be taken before upgrading the server and plugin packages. When the old packages are upgraded, a message about plugin incompatibility is printed, but the server and plugin packages are upgraded anyway.
When performing minor upgrades on CentOS, RHEL, Rocky Linux, and SUSE, a logical backup can be taken before or after upgrading the server package. When the old packages are upgraded, a message about plugin incompatibility is printed, and the server package is upgraded, but the plugin package is not. The old plugin package must be manually removed, and then the new plugin package can be installed.
When performing major upgrades on CentOS, RHEL, Rocky Linux, and SUSE, a logical backup must be taken before upgrading the server and plugin packages. The old server and plugin packages must be manually removed, and then the new server and plugin packages can be installed.
When the plugin package is manually removed, the plugin configuration file can also be removed, so it is recommended to backup the file.
This page is: Copyright © 2025 MariaDB. All rights reserved.
This page is: Copyright © 2025 MariaDB. All rights reserved.
This page is: Copyright © 2025 MariaDB. All rights reserved.
This page is: Copyright © 2025 MariaDB. All rights reserved.
This page is: Copyright © 2025 MariaDB. All rights reserved.
This page is: Copyright © 2025 MariaDB. All rights reserved.
This page is: Copyright © 2025 MariaDB. All rights reserved.
This page is: Copyright © 2025 MariaDB. All rights reserved.
This page is: Copyright © 2025 MariaDB. All rights reserved.
This page is: Copyright © 2025 MariaDB. All rights reserved.
This page is: Copyright © 2025 MariaDB. All rights reserved.
This page is: Copyright © 2025 MariaDB. All rights reserved.
This page is: Copyright © 2025 MariaDB. All rights reserved.
This page is: Copyright © 2025 MariaDB. All rights reserved.
This page is: Copyright © 2025 MariaDB. All rights reserved.
This page is: Copyright © 2025 MariaDB. All rights reserved.
This page is: Copyright © 2025 MariaDB. All rights reserved.
This page is: Copyright © 2025 MariaDB. All rights reserved.
This page is: Copyright © 2025 MariaDB. All rights reserved.