MariaDB 10.6.15 Release Notes
The most recent release of MariaDB 10.6 is:
MariaDB 10.6.20 Stable (GA) Download Now
Alternate download from mariadb.org
Download Release Notes Changelog Overview of 10.6
Release date: 14 Aug 2023
MariaDB 10.6 is a previous long-term series of MariaDB, maintained until July 2026. It is an evolution of MariaDB 10.5 with several entirely new features.
MariaDB 10.6.15 is a Stable (GA) release.
For an overview of MariaDB 10.6 see the What is MariaDB 10.6? page.
Thanks, and enjoy MariaDB!
Notable Items
Upgrading from MySQL
- MariaDB now detects and converts previously incompatible MySQL partition schemes (MDEV-29253)
General
- As per the MariaDB Deprecation Policy, this will be the last release of MariaDB 10.6 for Ubuntu 18.04 LTS "Bionic" and Ubuntu 22.10 "Kinetic"
- mariadb-dump --force doesn't ignore error as it should (MDEV-31092)
- 280 Bytes lost in mysys/array.c, mysys/hash.c, sql/sp.cc, sql/sp.cc, sql/item_create.cc, sql/item_create.cc, sql/sql_yacc.yy:10748 when using oracle sql_mode (MDEV-26186)
- SQL/PL package body does not appear in
I_S.ROUTINES.ROUTINE_DEFINITION
(MDEV-30662) - Unexpected result when combining DISTINCT, subselect and LIMIT (MDEV-28285)
- ROW variables do not get assigned from subselects (MDEV-31250)
- Crash after setting global session_track_system_variables to an invalid value (MDEV-25237)
- ODKU of non-versioning column inserts history row (MDEV-23100)
- UPDATE not working properly on transaction precise system versioned table (MDEV-25644)
- Assertion
`const_item_cache == true'
failed inItem_func::fix_fields
(MDEV-31319) - ANALYZE doesn't work with pushed derived tables (MDEV-29284)
get_partition_set
is never executed inha_partition::multi_range_key_create_key
due to bitwise & with 0 constant (MDEV-24712)- Client can crash the server with a
mysql_list_fields("view")
call (MDEV-30159) I_S.parameters
not immediatly changed updated after procedure change (MDEV-31064)- bzero wipes more bytes than necessary in
set_global_from_ddl_log_entry
(MDEV-31521) - Assertion
`0'
failed inType_handler_row::field_type
uponTO_CHAR
with wrong argument (MDEV-29152) - mysql_upgrade fails due to
old_mode=""
, with "Cannot load from mysql.proc. The table is probably corrupted" (MDEV-28915)
Character Sets, Data Types
- UBSAN: null pointer passed as argument 1, which is declared to never be null in
my_strnncoll_binary
onSELECT ... COUNT
orGROUP_CONCAT
(MDEV-28384) - Possibly wrong result or Assertion `0' failed in
Item_func_round::native_op
(MDEV-23838) - Assertion
`(length % 4) == 0'
failed inmy_lengthsp_utf32
onSELECT
(MDEV-29019) - UBSAN: negation of -X cannot be represented in type
'long long int'
; cast to an unsigned type to negate this value to itself inItem_func_mul::int_op
andItem_func_round::int_op
(MDEV-30932) - Assorted assertion failures in json_find_path with certain collations (MDEV-23187)
InnoDB
- Crashing on I/O error is unhelpful (MDEV-27593)
- SIGSEGV in
log_sort_flush_list()
in InnoDB crash recovery (MDEV-31354) - InnoDB tables are being flagged as corrupted on an I/O bound server (MDEV-31767)
- Deadlock with 3 concurrent DELETEs by unique key (MDEV-10962)
- Server Status Innodb_row_lock_time% is reported in seconds (MDEV-29311)
- innochecksum dies with Floating point exception (MDEV-31641)
- Add InnoDB engine information to the slow query log (MDEV-31558)
- innodb protection against dual processes accessing data insufficient (MDEV-31568)
- ER_DUP_KEY in
mysql.innodb_table_stats
upon RENAME on sequence (MDEV-31607) - Assertion
`!strcmp(index->table->name.m_name, "SYS_FOREIGN") || !strcmp(index->table->name.m_name, "SYS_FOREIGN_COLS")'
failed inbtr_node_ptr_max_size
(MDEV-19216) - InnoDB: Failing assertion:
page_type == i_s_page_type[page_type].type_value
(MDEV-31386) btr_estimate_n_rows_in_range()
accesses unfixed, unlatched page (MDEV-30648)MODIFY COLUMN
can break FK constraints, and lead to unrestorable dumps (MDEV-31086)- Recovery or backup failure after innodb_undo_log_truncate=ON (MDEV-31487)
- Assertion
'n & PENDING'
failed infil_space_t::set_needs_flush()
(MDEV-31442) fil_node_open_file()
releasesfil_system.mutex
allowing other thread to open its file node (MDEV-31256)- ASAN errors in
dict_v_col_t::detach
upon adding key to virtual column (MDEV-31416) - Purge trying to access freed secondary index page (MDEV-31264)
- Freed data pages are not always being scrubbed (MDEV-31253)
- InnoDB recovery hangs after reporting corruption (MDEV-31353)
!cursor->index->is_committed()
in row0ins.cc after update to 10.4.13 from 10.3.21 (MDEV-22739)- innodb_undo_log_truncate=ON fails to wait for purge of enough transaction history (MDEV-31355)
- SET GLOBAL innodb_undo_log_truncate=ON does not free space when no undo logs exist (MDEV-31382)
- innodb_read_ahead_threshold (linear read-ahead) does not work (MDEV-29967)
- InnoDB recovery and
mariadb-backup --prepare
fail to report detailed progress (MDEV-29911) fil_ibd_create()
may hijack the file handle of an old file (MDEV-31347)- innodb_undo_log_truncate=ON recovery results in a corrupted undo log (MDEV-31373)
- Server freeze due to innodb_change_buffering and innodb_file_per_table=0 (MDEV-31088)
- Change buffer entries are left behind when freeing a page, causing secondary index corruption when the page is later reused (MDEV-31385)
- Foreign Key Constraint actions don't affect Virtual Column (MDEV-18114)
Aria
- Various crashes upon INSERT/UPDATE after changing Aria settings (MDEV-28054)
- Various crashes/asserts/corruptions when Aria encryption is enabled/used, but the encryption plugin is not loaded (MDEV-26258)
Spider
- SIGSEGV in
spider_db_open_item_field
and SIGSEGV inspider_db_print_item_type
, on SELECT (MDEV-29447) - Spider variables that double as table params overriding mechanism is buggy (MDEV-31524)
Optimizer
- ANALYZE FORMAT=JSON now includes InnoDB engine statistics for each table (MDEV-31577)
- Assertion
`last_key_entry >= end_pos'
failed in virtual boolJOIN_CACHE_HASHED::put_record()
(MDEV-31348) - Problem with open ranges on prefix blobs keys (MDEV-31800)
- Equal on two RANK window functions create wrong result (MDEV-20010)
- Recursive CTE execution is interrupted without errors or warnings (MDEV-31214)
- Assertion
`s->table->opt_range_condition_rows <= s->found_records'
failed inapply_selectivity_for_table
(MDEV-31449) - Inconsistency between MRR and SQL layer costs can cause poor query plan (MDEV-31479)
MAX_SEL_ARG
memory exhaustion is not visible in the optimizer trace (MDEV-30964)- SHOW TABLES not working properly with
lower_case_table_names=2
(MDEV-30765) - Segfault on select query using index for group-by and filesort (MDEV-30143)
- Server crash in
store_length
, assertion failure inType_handler_string_result::sort_length
(MDEV-31743)
Replication
- Parallel Slave SQL Thread Can Update Seconds_Behind_Master with Active Workers (MDEV-30619)
- ALTER SEQUENCE ends up in optimistic parallel slave binlog out-of-order (MDEV-31503)
- STOP SLAVE takes very long time on a busy system (MDEV-13915)
- On slave XA COMMIT/XA ROLLBACK fail to return an error in read-only mode (MDEV-30978)
- Calling a function from a different database in a slave side trigger crashes (MDEV-29894)
rpl.rpl_manual_change_index_file
occasionally fails in BB with Result length mismatch (MDEV-30214)
Galera
- Node never returns from Donor/Desynced to Synced when
wsrep_mode = BF_ABORT_MARIABACKUP
(MDEV-31737) - Node has been dropped from the cluster on Startup / Shutdown with async replica (MDEV-31413)
- KILL QUERY maintains nodes data consistency but breaks GTID sequence (MDEV-31075)
- Assertion failure
!lock.was_chosen_as_deadlock_victim in trx0trx.h:1065
(MDEV-30963) - MariaDB stuck on starting commit state (waiting on commit order critical section) (MDEV-29293)
- Assertion
state() == s_aborting || state() == s_must_replay
failed in int wsrep::transaction::after_rollback() (MDEV-30013) - Assertion
!wsrep_has_changes(thd) || (thd->lex->sql_command == SQLCOM_CREATE_TABLE && !thd->is_current_stmt_binlog_format_row()) || thd->wsrep_cs().transaction().state() == wsrep::transaction::s_aborted
failed (MDEV-30388) - Server crashes when wsrep_sst_donor and wsrep_cluster_address set to NULL (MDEV-28433)
- Create temporary sequence can cause inconsistency (MDEV-31335)
- Galera 4 unable to query cluster state if not primary component (MDEV-21479)
Changelog
For a complete list of changes and bugfixes made in MariaDB 10.6.15, with links to detailed information on each push, see the changelog.
Contributors
For a full list of contributors to MariaDB 10.6.15, see the MariaDB Foundation release announcement.
Be notified of new MariaDB Server releases automatically by subscribing to the MariaDB Foundation community announce 'at' lists.mariadb.org announcement list (this is a low traffic, announce-only list). MariaDB plc customers will be notified for all new releases, security issues and critical bug fixes for all MariaDB plc products thanks to the Notification Services.
MariaDB may already be included in your favorite OS distribution. More
information can be found on the
Distributions which Include MariaDB
page.