Release Notes for MariaDB Enterprise Server 10.6.22-18
MariaDB Enterprise Server 10.6.22-18 is a maintenance release of MariaDB Enterprise Server 10.6. This release includes a variety of fixes.
MariaDB Enterprise Server 10.6.22-18 was released on 11 Jun 2025.
Fixed Security Vulnerabilities
Changes in Storage Engines
This release incorporates MariaDB ColumnStore engine version 23.10.4.
Notable changes
New user variable, analyze_max_length, default value 4G. Any field that is bigger than this value in bytes will be ignored by ANALYZE TABLE PERSISTENT to not collect statistics for long char/varchars unless it is specified in FOR COLUMNS(). (MENT-2301)
SBOM now includes 'license' and 'copyright' information, improving security compliance and dependency tracking. (MENT-2311)
MariaDB effectively running as root CAP_DAC_OVERRIDE (MDEV-36229)
my_getopt compares option names case sensitively (MDEV-27126)
Galera updated to 26.4.22
Support has been added for Oracle Linux 8 and 9
Issues Fixed
Can result in data loss
Assertion InnoDB searching row in wrong partition for multiple system versioned DELETE with same timestamp and same multistatement transaction (MDEV-36115)
Can result in hang or crash
Incorrect error handling on DDL with FULLTEXT INDEX (MDEV-36061)
ALTER TABLE…SEQUENCE does not work correctly with InnoDB (MDEV-36038)
Race conditions between ALTER TABLE or OPTIMIZE TABLE and the purge of transaction history were fixed. (MDEV-36122)
Server aborts while deleting the record in spatial index (MDEV-35420)
The server could crash when an UPDATE is about to commit concurrently with a CREATE INDEX that includes VIRTUAL columns (MDEV-36281)
Upgrades fail on Windows (MDEV-36128)
ASAN errors in dict_sys_t::load_table / get_foreign_key_info after failing to load a table (MDEV-33167)
ALTER TABLE…DROP COLUMN after a failed ALTER TABLE…DROP COLUMN could lead to a server crash (MDEV-36236)
Field pointer may be uninitialized in fill_record (MDEV-36181)
A primary server could crash when a semi-sync connection is stopped, if the primary previously disabled semi-sync replication while the connection was already up (and `rpl_semi_sync_master_wait_no_slave=0`). (MDEV-36359)
Incorrect undo logging for indexes on virtual columns whose index ID does not fit in 32 bits (MDEV-36613)
With wsrep_ignore_apply_errors = 0, the node crashes due to assertion thd->is_error() failed in Sql_cmd_dml::prepare(), shown in the logs (MDEV-35946)
In some cases, if there are MDL locks (for example, when LOCK TABLE is executed), a node could get stuck in the system thread due to incorrect handling of metadata locks (MDL) in server code when a transaction was BF aborted. (MDEV-35941)
Regression after the fix for MDEV-31413 - sometimes the server crashes with an assertion in wsrep::transaction::before_rollback(), for example when using OPTIMIZE TABLE on an ARIA table with wsrep_osu_method=RSU. (MDEV-32631)
SST failure occurs when gtid_strict_mode is enabled under high load, such as OLTP load is active on the primary node. A typical symptom of this error is the presence of the diagnostic "[ERROR] mariadbd: Error writing file 'binlog'", in the debug version it is also possible to crash on assertion in the wsrep::transaction::before_rollback() function with the message "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' failed". (MDEV-34891)
In Galera, creating sequence with a small cache leads to signal 6 error: [ERROR] WSREP: FSM: no such a transition REPLICATING -> COMMITTED. (MDEV-33850)
Under high load wsrep internal thread may terminate due to memory pressure conditions, but this is not a crash, however in debug version user may encounter assertion in wsrep_to_isolation_begin() function with following message: "int wsrep_to_isolation_begin(THD*, const char*, const char*, const TABLE_LIST*, const Alter_info*, const key_array*, const HA_CREATE_INFO*): Assertion `(0)' failed." (MDEV-36116)
Assertion `commit_trx' failed in innobase_commit() (ha_innodb.cc). An INSERT with sql_log_bin=0 is still replicated in Galera (per MDEV-7205), despite binary logging being disabled. This results in a partial binlog bypass, requiring a two-phase commit (2PC). During 2PC, the INSERT is first prepared (entering the PREPARED state in InnoDB), and on commit, the new assertion from MDEV-24035 fails, causing a crash with "Assertion 'commit_trx' failed" in logs. (MDEV-35658)
When a sequence is used and inserts run in parallel on multiple Galera nodes, a transaction may be aborted after passing certification. If it then attempts to roll back, the binlog statement cache—which includes reserved sequence values—may be written prematurely. This causes a crash with the diagnostic "WSREP: FSM: no such a transition REPLICATING -> COMMITTED" in the logs, as the transaction is supposed to replay and only write to the binlog during the final commit. (MDEV-33589)
A Galera node may hang due to improper mutex handling: a thread held lock_sys.wait_mutex while triggering a streaming replication rollback, which also tried to acquire THD::LOCK_thd_kill, leading to incorrect mutex usage. In debug versions, this leads to diagnostics like "safe_mutex: Found wrong usage of mutex 'wait_mutex' and 'LOCK_thd_data'", but in both debug and release versions, there is some probability that the node may hang. (MDEV-36509)
corruption when query cache cannot allocate block (MDEV-34075)
Stack looping and SIGSEGV in Item_args::walk_args on UPDATE (MDEV-31647)
Server crash in find_field_in_tables, Assertion `name' failed in find_field_in_table_ref (MDEV-25012)
Long server_audit_file_path causes buffer overflow (MDEV-36245)
Server crash when inserting from derived table containing insert target table (MDEV-32086)
Can result in unexpected behaviour
CREATE INDEX fails to heal a FOREIGN KEY constraint (MDEV-35962)
Doublewrite recovery of innodb_checksum_algorithm=full_crc32 page_compressed pages does not work (MDEV-36180)
Segfault on concurrent ALTER and SELECT for partitioned table (MDEV-31122)
ST_PointFromWKB ignores SRID argument and always creates the POINT with 0 for it's SRID (MDEV-32619)
mariadb-dump used wrong quoting character (MDEV-36268)
After a corrupted table on one node triggers the cluster to vote to evict a node that failed a transaction, the current master can’t commit any more and hangs. (MDEV-34998, MENT-2081)
MDEV-32157 intended to fix spider wrapper so that it is case insensitive, among other things. However that fix was incomplete, as the udf spider_direct_sql may still require case sensitivity. MDEV-35807 fixes this. (MDEV-35807)
Creating partitioned tables is disallowed when wsrep_osu_method=TOI and wsrep_strict_ddl=ON, preventing alteration or deletion of partitioned tables. (MDEV-27861)
Attempting to create a CONNECT engine table results in "non-InnoDB sequences in Galera cluster" error message in logs due to an incorrect engine check. (MDEV-35748)
innodb_snapshot_isolation=1 gives error for not committed row changes (MDEV-36639)
Aria engine: log initialization failed (MENT-2235)
MariaDB Backup returns with an error like "Error on file ./test/t1#P#p513.MYD open during `test`.`t1` table copy for partitioned MyISAM tables when running out of file handles (MENT-2089)
User without any privileges to a sequence can read from it and modify it via column default (MDEV-36413)
User has unauthorized access to a sequence through a view with security invoker (MDEV-36380)
Unexpected results
The untested ha_spider::index_first_internal constructs broken queries (MDEV-36324)
Wrong results from tables with a single record and an aggregate (MDEV-35238)
Unexpected error 1264 'Out of Range Value for Column' when inserting into ... select ... from a spider table (MDEV-35874)
group by handler missing constant fields when selecting from a view (MDEV-36307)
Tests calling the udf spider_copy_tables fail with --view-protocol (MDEV-36335)
Related to performance
dict_stats_fetch_from_ps() unnecessarily holds exclusive dict_sys.latch (MDEV-35436)
Stall and crash when page cleaner fails to generate free pages during Async flush (MDEV-36226)
Changelog
For the complete list of changes in this release, see the changelog.
Platforms
In alignment to the enterprise lifecycle, MariaDB Enterprise Server 10.6.22-18 is provided for:
AlmaLinux 8 (x86_64, ARM64)
AlmaLinux 9 (x86_64, ARM64)
Debian 11 (x86_64, ARM64)
Debian 12 (x86_64, ARM64)
Microsoft Windows (x86_64) (MariaDB Enterprise Cluster excluded)
Oracle Linux 8 (x86_64, ARM64)
Oracle Linux 9 (x86_64, ARM64)
Red Hat Enterprise Linux 8 (x86_64, ARM64)
Red Hat Enterprise Linux 9 (x86_64, ARM64, PPC64LE)
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)
Ubuntu 24.04 (x86_64, ARM64)
Red Hat UBI 8 (x86_64, ARM64)
Red Hat UBI 8 is part of the Enterprise Server Docker Image. It does not support MariaDB Enterprise Cluster (Galera) or MariaDB ColumnStore.
Some components of MariaDB Enterprise Server are supported on a subset of platforms. See MariaDB Engineering Policies for details.
This page is: Copyright © 2025 MariaDB. All rights reserved.
Last updated
Was this helpful?