Release Notes for MariaDB Enterprise Server 10.6.17-12
MariaDB Enterprise Server 10.6.17-12 is a maintenance release of MariaDB Enterprise Server 10.6. This release includes a variety of fixes.
MariaDB Enterprise Server 10.6.17-12 was released on 2024-03-11.
Note
MariaDB Enterprise Server 10.6.17-12 introduced a regression which can result in a server crash. Users are encouraged to update to MariaDB Enterprise Server 10.6.17-13. If an update not possible we recommend to increase your current setting for --thread_stack by 100k.
Please see the Release Notes for MariaDB Enterprise Server 10.6.17-13 for details.
Changes in Storage Engines
This release incorporates MariaDB ColumnStore engine version 23.10.1.
Notable Changes
Galera has been updated to 26.4.17
AlmaLinux 8 and 9 are now officially supported. RHEL 8 and 9 packages are used for AlmaLinux
Deprecation of
secure_auth=0with this release (MDEV-32617)New variable
optimizer_adjust_secondary_key_costs(MDEV-33118)This variable changes the optimizer behavior in the case where the optimizer wrongly uses a secondary key instead of a clustered primary key for InnoDB.
The different values for the new variable:
optimizer_adjust_secondary_key_costs=0(default)No changes to current model
optimizer_adjust_secondary_key_costs=1Ensures that the cost of secondary indexes has a cost of at least 5x times the cost of a primary key
optimizer_adjust_secondary_key_costs=2Disable
worst_seekoptimization and slightly adjust filter cost (add cost of 1 if filter is used)
Users with
ALL PRIVILEGESon a db will now also see all routine bodies in that db (MENT-1983)More detailed logging for network related errors has been added. Use
--log-warnings=4or higher to enable it. (MENT-2054)Thread ID and database are now added to the log of the SQL error plugin, if
sql_error_log_with_db_and_thread_info=ONis set : (MDEV-27087)
Issues Fixed
Can result in data loss
BLOBcorruption onUPDATE of PRIMARY KEYwithFOREIGN KEY(MDEV-31441)Corrupted table after instant
ADD COLUMNfailed due to attempting to exceed the maximum record length (MDEV-18322)If tables are frequently created, renamed, dropped, a backup cannot be restored. mariadb-backup --prepare might fail or finish OK, but some data files of recently created tables would be corrupted (MDEV-32939)
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 (MDEV-32938)
If Galera is enabled with binlog emulation, attempting to set a
SAVEPOINTwhen one of the involved storage engines does not support savepoints, can result in cluster wide inconsistency. A part of a transaction could be replicated to other notes, but a local statement rollback could be triggered. (MDEV-32549)InnoDB after issuing
ALTER TABLE...IMPORT TABLESPACEmay not be crash safe anymore (MDEV-32269)When a table is created with a virtual column while using
sql_mode=ORACLE, the server can crash when the table is changed while using a different setting forsql_mode(MDEV-27744)The virtual column must have been created using:
DECODE()LTRIM()RTRIM()LPAD()RPAD()REPLACE()SUBSTR()
Can result in hang or crash
Possible deadlock when accessing BLOBs in a corrupted InnoDB table with
ROW_FORMAT=COMPRESSED(MDEV-32371)An
INSERT .. FROM SELECTwith an empty result set crashes withinnodb_force_recovery=6orinnodb_read_only=ON(MDEV-31861)A shutdown of the server with
innodb_fast_shutdown=0can hang after the server failed to start up (MDEV-32798)Crash while trying to complain "unsupported meta-data version" on
ALTER TABLE...IMPORT TABLESPACEwith MySQL 8.0 files (MDEV-29972)Wrong table attribute
PAGE_COMPRESSED=1shown 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(MDEV-31413) with diagnostics like:
[ERROR] Slave SQL: Error 'WSREP has not yet prepared node for application use' on queryand
[ERROR] Slave SQL: Node has dropped from cluster, Gtid 1-1-1, Internal MariaDB error code: 1047" in the server logGTIDsmay diverge in Galera cluster afterCREATE TABLE AS(MDEV-27806) This can subsequently lead to diagnostics like:
[ERROR] mariadbd: Error writing file '/opt/maria10.1/binlog/BINLOG' (errno: 1950 "Unknown error 1950")"and node crash:
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` failedSHOW SLAVE STATUScan 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 ...)(MDEV-29070)A
DELETEwithORDER BYand semijoin optimization can cause a crash (MDEV-32212)Possible crash when lateral derived in a query is guaranteed to return no rows (MDEV-31279)
When using
EXCHANGE PARTITIONto 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 (MDEV-28127)When using
INSERT DELAYEDwith a table using virtual columns, the server can crash (MDEV-29932)When using
SELECTfrom a derived table with using AS OF, the server can crash (MDEV-32082)When using
JSON_CONTAINS_PATHin a comparison in a prepared statement, the server can crash on execution of the statement (MDEV-32867)mariadbd --bootstrap / mariadb_install_dbhangs when Spider is installed (MDEV-32903)Binlog Checksum of replication user variable events is zeroed by Zlib if part of event data is empty. The bug is a regression of other fixes on a server build with the zlib library. It can show up as a checksum verification error of a user variable event at its reading from binlog, (MDEV-33283)
When adding a second semi-sync replica to a primary, it can hang at connect time without receiving any events, until the primary receives an ACK from the first existing replica. This can be indefinite if no new transactions occur on the primary (MDEV-32792)
Server hangs on
DROP DATABASEafter a failingLOCK TABLESon Spider table (MDEV-29667)When a prepared statement with subqueries and window function is executed with
sql_mode = ONLY_FULL_GROUP_BY, the server can crash (MDEV-31296)When using two temporary tables in
OPTIMIZE TABLE, executed as a prepared statement, the server can crash (MDEV-31523)When calling SP invoking another SP with a parameter requiring a type conversion, the server can crash (MDEV-33270)
Possible hang when changing the InnoDB log file size using
SET GLOBAL innodb_log_file_size(MENT-1271)If a query's
WHEREclause has conditions over more than 128 columns of the same table,optimizer_use_condition_selectivityis 3, or higher,use_stats_tablesis not set toNEVER, and statistics for the columns have been collected viaANALYZE TABLE, the server could crash (MENT-2036)
Can result in unexpected behavior
SHOW WARNINGScan show wrong foreign key related warnings/errors from an earlier transaction for InnoDB (MDEV-32833)LeakSanitizererrors inmem_heap_create_block_funcupon query fromI_S.INNODB_SYS_TABLESwithLIMIT ROWS EXAMINED(MDEV-32890)Query from
I_S.INNODB_SYS_INDEXESexceedingLIMIT ROWS EXAMINEDcausesER_UNKNOWN_ERRORandLeakSanitizererrors inrec_copy_prefix_to_buf_old(MDEV-28613)Unexpected
ER_ERROR_ON_RENAMEuponDROPnon-existingFOREIGN KEYwithALGORITHM=COPY(MDEV-22230)FOREIGN_KEY_CHECKSdoes not prevent non-copy alter from creating invalid FK structure (MDEV-29092)Secondary indexes on
VARCHARcolumns may be corrupted when theVARCHARis extended so much that a column prefix index must be used (MDEV-21245)Spider: Valid
LEFT JOINresults inERROR 1064(MDEV-26247)Syntax error upon query with subquery from Spider table (MDEV-30392)
Spider doesn't recognize
SEMI-JOIN(MDEV-31645)wsrep_provider_optionscan 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 (MDEV-32634)Mariadb-dump option
--delete-master-logsis ignored (MDEV-32953)multi source replication filters breaking GTID semantic (MDEV-26632)
If
wsrep_gtid_mode=ONis used andwsrep_gtid_domain_idis non-zero, after SST using mariadb-backup GTIDs will become inconsistent both at the domain level, and at the seq_no level (MDEV-31905)wsrep_gtid_domain_idis ignored on any node other than bootstrapped node when thewsrep_gtid_modeis set to ON (MDEV-32740)LONG UNIQUE ... USING HASHcan result in an error when used with REPLACE (MDEV-32839)JSON_ARRAYAGG()doesn't evaluate correct charset which can lead to an unexpected result (MDEV-24784)Performance_schema.status_by_threadis missing SSL related entries, which also leads to an empty result set forselect * from sys.session_ssl_status; (MDEV-32751)A connection can control
RAND()in following connection if used in conjunction withset rand_seed1, rand_seed2(MDEV-33148)REGEXP_REPLACE converts utf8mb4 supplementary characters to '?' (MDEV-11777)
An
UPDATEof a column of aFEDERATEDtable fails with "ERROR 1296 (HY000): Got error 10000 'Error on remote system: 1143: UPDATE command denied to user 'xxx'@'x.x.x.x' for column 'id' in table 'x'' from FEDERATED"
if the table includes an AUTO_INCREMENT column (MDEV-32984)
"Read semi-sync reply magic number error" warnings are shown on the primary, if, first, the replica disables semi-synchronous mode (i.e., sets the variable rpl_semi_sync_slave_enabled=OFF) while an existing semi-sync connection is active, and then, the replica IO Thread stops (e.g., due to STOP SLAVE, or an error occurring) (MDEV-32551)
CHECK TABLEshows a MyISAM/Aria table as corrupted, as a unique hash key on column prefix is computed incorrectly (MDEV-29954)mysql.slow_log reports time when the query finished, not the start time (MDEV-11628)
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 (MDEV-32043)
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 (MDEV-32986)
Memory leak when purging history of indexed virtual columns : (MDEV-28682)
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-diris not used with--prepare(MDEV-29110)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 (MDEV-33019)
CREATE UNIQUE INDEXcan fail with an incorrect"ERROR 1286 (42000): Unknown storage engine 'partition'"(MDEV-21618)After successful connection, server sets
SERVER_STATUS_AUTOCOMMITinserver_statusin the OK packet although the global variableautocommit=0is set (MDEV-32875)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=0is set (MDEV-29718)Spider fails to auto-discover a table structure with
ERROR 12500 (HY000): unknown(MDEV-33008)On Windows the error
"InnoDB: Cannot open 'C:\xampp\mysql\data/ib_buffer_pool' for reading: No such file or directory"could be shown (MDEV-32983)REGEXP_REPLACEtreats empty strings different thanREPLACEinORACLEmode (MDEV-29095)REPLACEis supposed to remove all conflicting rows of a table. ForUNIQUE HASH, REPLACEonly removes the first conflicting row, not all conflicting rows (MDEV-32837)The SQL error plugin prints (
null) as database if the mariadb client is not using any database to execute the SQL (MDEV-32906)The Enterprise Audit Plugin does not always report the user name (MENT-2035)
Related to performance
An
ALTERusingALGORITHM=INPLACEor adding new indexes can increase the table space file size (MDEV-26740)History list is not shrunk unless there is a pause in the workload (MDEV-33213)
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)
When the size of the working set exceeds
innodb_buffer_pool_size, the server can stall for short periods of time (MDEV-33053)Unnecessary writes of not modified undo log pages (MDEV-33137)
innodb_undo_log_truncate=ONis blocking page writes (MDEV-33112)innodb_undo_log_truncate=ONprevents fast shutdown (MDEV-33062)Some calls to
buf_read_ahead_linear()seem to be useless (MDEV-32068)Opening all
.ibdfiles on InnoDB startup can be slow (MDEV-32027)Adaptive flush recommendation ignores dirty ratio and checkpoint age (MDEV-31939)
Possible slowdown when running nested statement with many partitions (MENT-2047)
Performance regression due to frequent scan of full
buf_pool.flush_list(MENT-2051)
Platforms
In alignment to the enterprise lifecycle, MariaDB Enterprise Server 10.6.17-12 is provided for:
AlmaLinux 8 (x86_64, ARM64)
AlmaLinux 9 (x86_64, ARM64)
CentOS 7 (x86_64)
Debian 10 (x86_64, ARM64)
Debian 11 (x86_64, ARM64)
Debian 12 (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)
Red Hat Enterprise Linux 9 (x86_64, ARM64)
Rocky Linux 8 (x86_64, ARM64)
Rocky Linux 9 (x86_64, ARM64)
SUSE Linux Enterprise Server 12 (x86_64)
SUSE Linux Enterprise Server 15 (x86_64, ARM64)
Ubuntu 20.04 (x86_64, ARM64)
Ubuntu 22.04 (x86_64, ARM64)
Some components of MariaDB Enterprise Server might not support all platforms. For additional information, see MariaDB Corporation Engineering Policies".
Installation Instructions
Upgrade Instructions
This page is: Copyright © 2025 MariaDB. All rights reserved.
Last updated
Was this helpful?

