Changelog for MariaDB Enterprise Server 11.4.5-3

MariaDB Enterprise Server 11.4.5-3 is a maintenance release of MariaDB Enterprise Server 11.4. For the categorized highlights and other details of this release, see the release notes.

MariaDB Enterprise Server 11.4.5-3 was released on 19 Mar 2025.

Changes

  • (MENT-2233) Backport Vector Search to MariaDB Enterprise Server 11.4

  • (MENT-2228) cherry-pick the fix for MDEV-36138

  • (MDEV-35789) Q1 2025 release merge

  • (MDEV-35854) Clean up some DDL code around FOREIGN KEY constraints

  • (MENT-2145) Backport MDEV-23729 - INFORMATION_SCHEMA Table info. about user locked due to max_password_errors

  • (MENT-2234) Starting with this release we generate a Software Builds of Materials(SBOM) JSON file provided in the downloads archive, which can be reached from the "All Files" link on the MariaDB Enterprise Server downloads page

  • (MDEV-32576) InnoDB deadlock output query length increased to improve visibility of deadlocked statements.

Issues Fixed

  • (MDEV-31761) Fix incorrect writing of timestamp into binary logy, causing discrepancy upon binlog replaying

  • (MDEV-34958) Fix trigger created with "CREATE TRIGGER table1_after_insert AFTER INSERT" which is adding rows to another table using "FOR EACH ROW insert into table2(id, name) values (NEW.id, NEW.name);" that did not work correctly when if bulk inserts are used by the application. Only the first row of the bulk insert would be added to the table

  • (MDEV-35096) History is now stored on the same partitions on different Galera nodes when system versioning is enabled

  • (MDEV-30111) Fix assertion falilure and possible index corruption with unique key and nopad collation without DESC or HASH keys

  • (MDEV-34090) Fix client crash the command after client sets character set to utf32

  • (MDEV-33987) Fix possible crash where server could not construct a geomery object from the input

  • (MDEV-35409) Fix possible InnoDB hang while running out of buffer pool

  • (MDEV-35064) Fix possible Spider thread hang in 'Update' state on 2nd INSERT

  • (MDEV-33783) After changing the table definition for the system table 'mysql.servers', a following execution of CREATE SERVER would previously lead to a server crash.

    • NOTE: System tables should never be modified by a user anyhow

  • (MDEV-35281) FIx streaming replication transaction crash with innodb_snapshot_isolation

  • (MDEV-35465) Fix sporadic failure of async replication on Galera async replica nodes with parallel replication enabled

  • (MDEV-24035) Fix failing assertion causing disruption and replication failure

  • (MDEV-35387) Fix possible failure of wsrep_sst_rsync SST script if user specified aria_log_dir_path different from default data directory

  • (MDEV-35571) Fix connection hang after query on a partitioned table with UNION and LIMIT ROWS EXAMINED

  • (MDEV-29935) Fix server crash in get_sort_by_table/make_join_statistics after INSERT into a view with ORDER BY

  • (MDEV-35647) Fix possible hang during CREATE TABLE…SELECT error handling, especially with innodb_snapshot_isolation enabled

  • (MDEV-29744) Fix incorrect locking order of LOCK_log/LOCK_commit_ordered and LOCK_global_system_variables

  • (MDEV-35326) Fix possible memory leak on SHUTDOWN

  • (MDEV-35575) Fix possible memory leak while shutting down server after installing the auth_gssapi plugin

  • (MDEV-22695) Fix possible crash on DELETE from a HEAP table

  • (MDEV-26891) Fix possible server crash when using INSERT DELAYED on tables with virtual columns.

  • (MDEV-28130) Fix possible crash during index traversal using tree_search_next.

  • (MDEV-25654) Fix possible hang or crash during InnoDB purge with HASH indexes during ALTER TABLE

  • (MDEV-35864) Fix possible hang or crash where zero offset applied to null pointer

  • (MDEV-34925) Fix possible crash on bootup in spider_sys_open_table (MDEV-32822, MDEV-34302)

  • (MDEV-34849) Fix possible Spider crash or hang when the first byte of a connection key is changed

  • (MDEV-35549) Fix possible runtime error caused by XA RECOVER applying a zero offset to a null pointer

  • (MDEV-29182) Fix assertion failure on cascading foreign key update of table with vcol index in parent

  • (MDEV-35090) FIx assertion failure where CURRENT_USER was not correctly copied during condition pushdown

  • (MDEV-35710) Fix cluster node hang during shutdown if threadpool is used

  • (MDEV-24935) Calling a stored routine that executes a join on three or more tables and referencing not-existent column name in the USING clause could previously result in a crash on its second invocation.

  • (MENT-2175) Fix possible assertion failure when Galera cluster is in 'split-brain' state due to loss of communication between nodes (fix requires Galera library 26.4.21+)

  • (MENT-2212) Fix assertion failure when executing XA PREPARE (and possibly other XA statements) on Galera cluster nodes

  • (MENT-2214) Fix assertion failure when executing XA statements on Galera cluster nodes

  • (MENT-2215) In rare cases, an ALTER TABLE or other operation could previously hang when using NBO mode on a cluster with very low network latencies (for example, when both nodes are running on the same physical machine)

  • (MDEV-33064) MariaDB Cluster and ALTER INPLACE running in Total Order Isolation (wsrep_OSU_method=TOI) now correctly abort a DML INSERT operation in InnoDB

  • (MDEV-33245) Fix possible crash in wsrep_check_sequence

  • (MDEV-35446) Fix sporadic reporting of success when a deadlock error occurs under --ps-protocol BF aborted transaction

  • (MDEV-35157) Fix rare cases where binlog entries could receive incorrect timestamps on secondary nodes of a Galera cluster, potentially impacting replication accuracy

  • (MDEV-35507) For an authentication with the ed25519 authentication plugin the password of the CREATE USER statement is now masked in the audit log

  • (MDEV-35522) MariaDB Audit now detects all DCLs forms for masking a password

  • (MDEV-35679) Fix potential issue in secondary Index with ROW_FORMAT=COMPRESSED and Change buffering enabled

  • (MDEV-35651) sql_mode='NO_UNSIGNED_SUBTRACTION' now works for multiple unsigned integers

  • (MDEV-34898) Fix doublewrite recovery of innodb_checksum_algorithm=full_crc32 encrypted pages

  • (MDEV-35335) START TRANSACTION, when triggering an implicit commit as a COMMIT or ROLLBACK has not been executed before, now resets optional characteristics added to the last START TRANSACTION command

  • (MDEV-35528) mariadb-binlog can now correctly process more than one logfile when --stop-datetime is specified

  • (MDEV-34924) Rows in table mysql.gtid_slave_pos are now correctly deleted on Galera nodes when wsrep_gtid_mode = 1 is used, which previously lead to wrong information about replica delays

  • (MDEV-35612) EXCHANGE PARTITION now works for tables with unique blobs

  • (MDEV-29968) Fix issue where functions in default values in tables with certain character sets could break SHOW CREATE and mariadb-dump

  • (MDEV-35646) Setting pseudo_thread_id to a value exceeding 4 bytes previously resulted in truncation when written to the binary log

  • (MDEV-19761) A BEFORE INSERT Trigger previously returned with error ""Field 'xxx' doesn't have a default value", if a NULL value is added for a column defined NOT NULL without explicit value and no DEFAULT specified

  • (MDEV-35852) Undefined behavior could occur when attempting to perform INSERT DELAYED on a Galera cluster node.

  • (MDEV-35445) Fix issue where ON UPDATE SET NULL could not be specified on a NOT NULL column

  • (MDEV-34813) algorithm = instant can now correctly be used if a table has partitions and one tries to change a column with an index which is not the partitions key. This previously gave error "ERROR 1846 (0A000): ALGORITHM=INSTANT is not supported. Reason: ADD INDEX. Try ALGORITHM=NOCOPY"

  • (MDEV-35018) Fix issue where DROP TABLE on child and UPDATE of parent table can cause a metadata lock BF-BF conflict when applied concurrently.

  • (MDEV-33658) Can now correctly add a foreign key on a table with a long UNIQUE multi-column index that contains a foreign key as a prefix

  • (MDEV-35869) Fix possibly wrong result using a degenerated subquery (SELECT ) with window function

  • (MDEV-20281) The "Failed to write to mysql.slow_log" error no longer shown without a detailed reason for the error

  • (MDEV-35907) Fix debian-start script failure when using non-standard socket path

  • (MDEV-35749) wsrep_sst_mariadb-backup.sh no longer uses --use-memory default (100MB) resulting in prepare stage which could take hours

  • (MENT-2238) Replicate_* fields in Show-Slave-Status may be truncated, impacting replication monitoring.

  • (MENT-2243) Cherry-Pick MDEV-35813 - Performance regression in INSERT...SELECT due to unnecessarily making InnoDB log durable

  • (MENT-2245) Galera SSL errors after wolfSSL upgrade

  • (MENT-2232) Milliseconds for Timestamp of the Enterprise Audit Log missing in 11.4

  • (MENT-2226) Cherry-pick MDEV-36026 - Problem with INSERT SELECT on NOT NULL columns while having BEFORE UPDATE trigger

  • (MDEV-35098) rpl.rpl_mysqldump_gtid_slave_pos fails in buildbot

  • (MDEV-35153) backport the MDEV-34716 fix of socket length in mysql.servers

  • (MDEV-35110) Fix deadlock on oeplica during BACKUP STAGE BLOCK_COMMIT on XA transactions

  • (MDEV-35109) Fix semi-sync replication stall on primary using wait point=AFTER_SYNC

  • (MDEV-35422) Fix possible crash after SELECT DISTINCT

  • (MDEV-26266) Assertion `state() == s_preparing || (is_xa() && state() == s_replaying) || (ret && (state() == s_must_abort || state() == s_must_replay || state() == s_cert_failed || state() == s_aborted))' failed

  • (MDEV-32411) Item_sum arguments incorrectly reset to temp table fields which causes crash

  • (MDEV-35508) Race condition between purge and secondary index INSERT or UPDATE

  • (MDEV-26516) In some rare situations, a failure occurs with the diagnostic 'WSREP: record locking is disabled in this thread, but the table being modified is not mysql/wsrep_streaming_log: mysql/innodb_table_stats.'

  • (MDEV-35648) Update lc2 tests

  • (MDEV-35604) SIGSEGV in filter_query_type | log_statement_ex / auditing

  • (MDEV-33472) Assertion `0' failed in Item_row::illegal_method_call on CREATE EVENT

  • (MDEV-29462) ASAN: heap-use-after-free in Binary_string::copy on DO CONVERT

  • (MDEV-29184) Assertion `0' in Item_row::illegal_method_call, Type_handler_row::Item_update_null_value, Item::update_null_value

  • (MDEV-23895) Server crash, ASAN heap-buffer-overflow or Valgrind Invalid write in Item_func_rpad::val_str

  • (MDEV-35393) ASAN unknown-crash in Field_varstring::reset when inserting NULL value to a table with filename charset

  • (MDEV-28686) Assertion `0' in Type_handler_string_result::make_sort_key or unexpected result

  • (MDEV-20944) Wrong result of LEAST() and ASAN heap-use-after-free in my_strnncollsp_simple / Item::temporal_precision on TIME()

  • (MDEV-24337) Server crash in DTCollation::set_repertoire_from_charset

  • (MDEV-25593) Assertion `0' failed in Type_handler_temporal_result::Item_get_date on double EXECUTE

  • (MDEV-35273) thread_pool_generic::m_thread_data_cache alignment violation

  • (MDEV-32755) Stack-Buffer-Overflow at /mariadb-11.3.0/strings/int2str.c:122

  • (MDEV-21589) AddressSanitizer: memcpy-param-overlap in Static_binary_string::q_append or String::append

  • (MDEV-25174) DOUBLE columns now accept large hex hybrids when previously these failed in some cases

  • (MDEV-23687) Assertion `is_valid_value_slow()' failed in Datetime::Datetime upon EXTRACT under mode ZERO_DATE_TIME_CAST

  • (MDEV-35416) CONV(1<<63, 10, -2) fails with --view-protocol

  • (MDEV-31910) ASAN memcpy-param-overlap upon CONCAT in ORACLE mode

  • (MDEV-31881) Fix crash in SELECT ... FROM ... PROCEDURE ANALYSE()

  • (MDEV-33942) View cuts off the end of string with the utf8 character set in INSERT function

  • (MDEV-29552) FIx issue where LEFT and RIGHT with large value for parameter 'len' >0 returned empty value in view

  • (MDEV-28652) SUBSTRING(str,pos,len) returns incorrect result in view (returns an empty string)

  • (MDEV-28001) greatest/least with bigint unsigned maxium has unexpected results compared to 0

  • (MDEV-21029) Incorrect result for expression with the <=> operator and IS NULL

  • (MDEV-23138) Odd behavior of character_set variables set to utf16 (when allowed)

  • (MDEV-34348) MariaDB is violating clang-16 -Wcast-function-type-strict

  • (MDEV-24959) ER_BINLOG_ROW_LOGGING_FAILED (1534: Writing one row to the row-based binary log failed)

  • (MDEV-5798) Unexpected change in error code on INSERT .. PARTITION causes replication abort

  • (MDEV-35525) Index corruption when using innodb_change_buffering; incorrect results in reverse index scans

  • (MDEV-35413) InnoDB: Cannot load compressed BLOB (ROW_FORMAT=COMPRESSED table)

  • (MDEV-35115) Inconsistent REPLACE behaviors

  • (MDEV-33075) Sending TERM to mariadb no longer gracefully terminates the process

  • (MDEV-35619) Assertion failure in row_purge_del_mark_error

  • (MDEV-31219) Assertion fixed failed in Item_func_hybrid_field_type / Frame_positional_cursor

  • (MDEV-30263) Assertion failure in Protocol::end_statement upon HANDLER READ with invalid timestamp

  • (MDEV-35641) foreign server "disappears" after ALTERing the servers system table to use innodb and FLUSH PRIVILEGES

  • (MDEV-35343) unexpected replace behaviour when long unique index on system versioned table

  • (MDEV-35828) Assertion fails in alloc_root() after max_session_mem_used is hit

  • (MDEV-16698) ASAN: heap-use-after-free in field_longstr::uncompress

  • (MDEV-34049) InnoDB: Failing assertion: table->get_ref_count() == 0 in dict_sys_t::remove on DROP

  • (MDEV-35407) Suppress STDERR while determining rpm package vendor and version in %prein scriptlet

  • (MDEV-34534) main.plugin_load - AddressSanitizer: Joining already joined thread, aborting.

  • (MDEV-35088) main.timezone started failing in Debian on MEST vs CET time zone difference

  • (MDEV-34408) Facilitate the addition of warnings into the build system

  • (MDEV-34847) Unquoted argument in logger call leads to invalid argument warnings

  • (MDEV-35421) main.mysql_upgrade fails without unix_socket plugin

  • (MDEV-35536) UBSAN: runtime error: call to function end_simple_key_cache through pointer to incorrect function type

  • (MDEV-35534) UBSAN: runtime error: call to function thd_decrement_pending_ops through pointer to incorrect function type

  • (MDEV-35533) UBSAN: runtime error: call to function sort_keys(st_key*, st_key*) through pointer to incorrect function type

  • (MDEV-35532) UBSAN: runtime error: call to function FT_STOPWORD_cmp through pointer to incorrect function

  • (MDEV-35530) UBSAN: runtime error: call to function get_sys_var_length on server startup or version query

  • (MDEV-35531) UBSAN: runtime error: call to function init_simple_key_cache through pointer to incorrect function type

  • (MDEV-34669) ER_NEED_REPREPARE on SELECT DEFAULT(name) FROM table1_containing_sequence

  • (MDEV-22964) main.mysqlbinlog_row_compressed fails with wrong result

  • (MDEV-35695) mtr failure suggest reading documentation at dev.mysql.com

  • (MDEV-35735) runtime error: call to function spider_direct_sql, spider_flush_table_mon_cache, spider_copy_tables through pointer to incorrect function type in udf_handler::val_in

  • (MDEV-33158) The macro MYSQL_THDVAR_ULONG leads to undefined behaviour, calling mysql_sys_var_long

  • (MDEV-35687) Various UBSAN function-type-mismatch errors when using MTR in maria_open, mi_open, _ma_open_datafile, mi_open_datafile and thr_multi_lock

  • (MDEV-35554) runtime error: call to function show_cached_thread_count()/show_binlog_space_total() through pointer to incorrect function type

  • (MDEV-35838) libressl support differences in CRYPTO_set_mem_functions

  • (MDEV-32686) crash information to include Distro information

  • (MDEV-35344) Galera test failure on galera_sync_wait_upto

  • (MDEV-28378) galera.galera_as_slave_ctas test fails with a timeout due to a possible issue with the server state - actually fixed by MDEV-32633

  • (MDEV-35471) Failures in the galera_pc_recovery mtr test in configurations where innodb engine is not enabled by default

  • (MDEV-35467) Extra warnings about failures in read_completion_condition() and read_handler() functions during execution of the galera_wan test

  • (MDEV-35440) A flaw in the galera_wsrep_schema_detached test resulted in unnecessary protocol error warnings

  • (MDEV-35481) A flaw in the galera_var_ignore_apply_errors test resulted in an incorrect error code ER_LOCK_DEADLOCK instead of ER_NO_SUCH_TABLE

  • (MDEV-35486) In some (rare) situations, statements (e.g. DROP TABLE) could fail with a spurious timeout message in RSU mode due to an incorrect variable assignment in the server code that changed the timeout value used during statement execution.

  • (MDEV-35355) A galera cluster node could crash or behave incorrectly in rate situations due to improper use of mutexes in situations where transactions are rolled back.

  • (MDEV-32779) Fixed a bug in the galera_concurrent_ctas test, but the work remains in another task (MDEV-34891)

  • (MDEV-35473) Periodic freezes of the galera_3nodes.galera_evs_suspect_timeout test due to flaws in the test itself

  • (MDEV-35345) Test failure on MW-402 due to a flaw in the test itself

  • (MDEV-35045) Fixed galera library compilation errors on some platforms (Fedora 41 and may be other)

  • (MDEV-32329) When exectuting a query using ORDER BY on SELECT ... HAVING, the server can crash

  • (MDEV-34770) UBSAN: runtime error: load of address 0x... with insufficient space for an object of type 'uchar' in sys_vars.inl

  • (MDEV-31030) Assertion `!error' failed in ha_partition::update_row on UPDATE

  • (MDEV-35489) Assertion `!ldate->neg' or unexpected result upon extracting unit from invalid value

  • (MDEV-34700) Connect SQLite3 MTR test fails due to various charset/collation related output changes

  • (MDEV-35477) rpl_semi_sync_no_missed_ack_after_add_slave fails after MDEV-35109

  • (MDEV-35583) explicitly initialize THR_KEY_mysys calling MY_INIT and my_end

  • (MDEV-35587) unit.innodb_sync leaks memory on mac

  • (MDEV-35514) Too much mtr output from analyze: sync_with_master

  • (MDEV-35501) innodb.log_file_name fails with "Could not measure size of ..."

  • (MDEV-35494) fil_space_t::fil_space_t() is potentially unsafe with GCC -flifetime-dse

  • (MDEV-35535) UBSAN: runtime error: call to function free_user_var through pointer to incorrect function type

  • (MDEV-35457) Remove btr_cur_t::path_arr

  • (MDEV-31366) Assertion `thd->start_time' failed in bool LOGGER::slow_log_print(THD*, const char*, size_t, ulonglong)

  • (MDEV-35181) Assertion 'state < buf_page_t::READ_FIX' in buf_page_create_low()

  • (MDEV-35626) Race condition between buf_page_create_low() and read completion

  • (MDEV-34820) wsrep_sst_mariadb-backup SST script could incorrectly calculate the actual file size on ZFS under FreeBSD, which could lead to progress reporting errors

  • (MDEV-35578) innodb_gis.rtree_debug fails on mac

  • (MDEV-35657) MSAN errors in os_file_readdir_next_file (xtrabackup)

  • (MDEV-35680) Table number > MAX_TABLES causes overflow of table_map at main.join test

  • (MDEV-29533) Crash when MariaDB is replica of MySQL 8.0

  • (MDEV-35607) Compile error with gcc-15 (signal returns)

  • (MDEV-35663) Sporadic connection failures during FLUSH PRIVILEGES

  • (MDEV-34733) main.mysqld--help-aria test failure: feedback plugin: failed to retrieve the MAC address

  • (MDEV-35704) Error message mispelled when altering table engine to MEMORY

  • (MDEV-35239) mariadb-backup incorrectly thinks we are on a multithreaded slave if slave_parallel_workers > 0

  • (MDEV-35659) Internal failure in wsrep-recover test which was observed during work on MDEV-24035

  • (MDEV-35438) Annotate InnoDB I/O functions with noexcept

  • (MDEV-35384) Table performance_schema.session_status and other two tables are not shown in information_schema.tables for normal users

  • (MDEV-35550) main.log_slow test failure: expects count(*) 5 got 4

  • (MDEV-32919) Cannot select particular field from IS.tables in case table needs upgrade from MySQL 5.7

  • (MDEV-35598) foreign key error is unnecessary truncated

  • (MDEV-35808) Test case to handle undo tablespace truncation in mariadb-backup

  • (MDEV-35701) trx_t::autoinc_locks causes unnecessary dynamic memory allocation

  • (MDEV-35840) gcc 12/13: -Warray-bounds when dereferencing value returned from TABLE_SHARE::db_type()

  • (MDEV-35632) HandlerSocket uses deprecated C++98 auto_ptr

  • (MDEV-35723) UBSAN: applying non-zero offset to null pointer in my_charpos_mb/my_uca_scanner_next_utf8mb4, applying zero offset to null pointer in my_strnncollsp_simple, my_uca_strnncollsp_onelevel_utf8mb4/my_uca_scanner_init_any/my_uca_scanner_next_utf8mb4 on INSERT

  • (MDEV-35708) lock_rec_get_prev() returns only the first record lock

  • (MDEV-35891) mtr - Backport workaround for perl bug 17570 from MySQL

  • (MDEV-32822) Crash signal 11 in spider_sys_open_table from spider_internal_xa_rollback_by_xid during recovery after crash

  • (MDEV-34302) Crash with RocksDB

  • (MDEV-33285) Assertion `m_table' failed in ha_perfschema::rnd_end on CHECKSUM TABLE

  • (MDEV-35938) rpl.rpl_parallel_gco_wait_kill fails - "Can't initialize replace ..."

  • (MDEV-32780) Crash while running galera_as_slave_replay test (previously was a consequence of real bugs, but they have already been fixed in the latest versions of the server)

  • (MDEV-35806) Error in read_log_event() corrupts relay log writer, crashes server

  • (MDEV-35911) Assertion `marked_for_write_or_computed()' failed in bool Field_new_decimal::store_value(const my_decimal*, int*)

  • (MDEV-35954) mysql_file.h cast warnings

  • (MENT-2213) Test failure on MENT-1733

  • (MDEV-35804) galera_ddl_fk_conflict test failed due to timeout

  • (MDEV-34218) Mariadb Galera cluster fails when replicating from Mysql 5.7 on use of DDL

  • (MDEV-33978) P_S.THREADS is not showing all server threads

  • (MDEV-35966) galera.galera_as_master crashes in debug builds

  • (MDEV-32175) page_align() or page_offset() may cost some performance

  • (MDEV-35247) ut_fold_ull() and ut_hash_ulint() are a waste

  • (MDEV-35190) HASH_SEARCH() is duplicating effort before HASH_INSERT() or HASH_DELETE()

  • (MDEV-35189) Updating cache for INFORMATION_SCHEMA.INNODB_LOCKS et al is suboptimal

  • (MDEV-35827) The generic MY_RELAX_CPU is expensive

  • (MDEV-35394) New parameter --skip-freed-pages for Innochecksum. Use this parameter to not get freed undo logs reported as existing undo log pages.

  • (MDEV-35505) Galera protocol versions are now shown by show status - change available with installation of galera library 26.4.21+

  • (MDEV-35643) MariaDB now supports MySQL 8.0 binlog events, including PARTIAL_UPDATE_ROWS_EVENT, TRANSACTION_PAYLOAD_EVENT, and HEARTBEAT_LOG_EVENT_V2.

  • (MDEV-35526) Fix possible crash in wsrep_sst_mariadb-backup script when upgrading node in cluster from 10.11.9 to 10.11.10.

  • (MDEV-35910) Conditions with SP local variables are now pushed into derived table. Previous behaviour caused slow performance and table scans instead of using the pushed down condition

  • (MDEV-34665) NULL-aware materialization with IN predicate and single column no longer skips building sorted Ordered_key structures

  • (MDEV-35363) Cloning of table statistics while saving the InnoDB table stats is now avoided

This page is: Copyright © 2025 MariaDB. All rights reserved.

Last updated

Was this helpful?