Release Notes for MariaDB Enterprise Server 10.6.11-6
This page is part of MariaDB's Documentation.
The parent of this page is: Release Notes for MariaDB Enterprise Server 10.6
Topics on this page:
Overview
MariaDB Enterprise Server 10.6.11-6 is a maintenance release of MariaDB Enterprise Server 10.6. This release includes a variety of fixes.
MariaDB Enterprise Server 10.6.11-6 was released on 2022-12-21.
Backported Features
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:
The new
slave_max_statement_timesystem variable is available to set the maximum execution time for queries on replica nodes. (MENT-1566, MDEV-27161)When a query takes more than
slave_max_statement_timeseconds to run on the replica (slave) node, the query is aborted, and replication stops with an error.The system variable can be set to a decimal value, where the decimal component has microsecond precision.
When set to
0, there is no timeout.The default value is
0.
To simplify maintenance, the
ALTER TABLEstatement supports new clauses to convert tables to partitions and partitions to tables. (MENT-1454)To convert a partition to a table, use the
CONVERT PARTITION .. TO TABLE ..clause:ALTER TABLE partitioned_table CONVERT PARTITION part1 TO TABLE normal_table;
To convert a table to a partition, use the
CONVERT TABLE .. TO PARTITION ..clause:ALTER TABLE partitioned_table CONVERT TABLE normal_table TO PARTITION part1 VALUES LESS THAN (12345);
The new
CONVERT PARTITIONandCONVERT TABLEclauses are crash-safe operations.The
EXCHANGE PARTITIONclause can still be used, but it is not a crash-safe operation.
Notable Changes
The
information_schema.INNODB_SYS_TABLESPACESview 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 details about the InnoDB temporary tablespace can be shown by querying for the name
innodb_temporary:SELECT * FROM information_schema.INNODB_SYS_TABLESPACES WHERE name LIKE 'innodb_temporary';
When a table's default collation is set to the default collation for the table's character set,
SHOW CREATE TABLEshows theCOLLATEclause. (MDEV-29446)In previous releases, MariaDB Enterprise Server reduced the size of
SHOW CREATE TABLEoutput by excluding theCOLLATEclause if the table's default collation was set to the default collation for the table's character set.
Implemented
CHECK TABLE .. EXTENDEDfor InnoDB. (MDEV-24402)When
CHECK TABLE .. EXTENDEDis executed, InnoDB confirms that no index contains orphan records.InnoDB performs the check by counting all index records according to the current read view, and ensuring that any delete-marked records in the clustered index are waiting for the purge of history, and that all secondary index records point to a version of the clustered index record that is waiting for the purge of history. Normal MVCC reads and
CHECK TABLEwithoutEXTENDEDwould ignore these orphans.
Issues Fixed
Can result in data loss
When a column is renamed in a partitioned table with
ALTER TABLE .. RENAME COLUMNusing theNOCOPYalgorithm, the table can be corrupted. (MDEV-28576)When the InnoDB storage engine performs change buffer operations, the InnoDB Redo Log can overflow, which can cause table corruption. (MENT-1661, MDEV-29905)
Can result in a hang or crash
When a query contains an
IN/ALL/ANYpredicand and the subquery contains aGROUP BYclause with anIN/ALL/ANYpredicand with a single-value subquery as the left operand, the server can crash. (MDEV-29350)If an InnoDB table contains a foreign key constraint and the child table's
DATABASE_NAME/TABLE_NAME.ibdis longer than 330 characters, when the parent table is renamed, the server can crash. (MDEV-29409)When a DDL statement is executed using the
INPLACEalgorithm andinnodb_adaptive_hash_index=ONis set, the server can hang. (MDEV-27700, MDEV-29384)When renaming a table to a long name, the server can crash. (MDEV-29258)
When an
ALTER TABLEstatement 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 TABLEor client disconnect. (MDEV-29507)When querying a partitioned table using the
PARTITIONsyntax, if theWHEREclause results in an index merge, the server can crash. (MDEV-21134)When detecting CTE dependencies of nested CTEs that includes one or more recursive CTEs, infinite recursion can occur until the server crashes. (MDEV-29361)
When the
wsrep_notify_cmdsystem variable is configured to use the bundledwsrep_notify.shscript, the server can hang during startup. (MDEV-27682)When selecting from InnoDB's
information_schemaviews (such asINNODB_TRX,INNODB_LOCKS, andINNODB_LOCK_WAITS), if connections with open XA transactions are disconnected or killed at the same time, the server can crash. (MDEV-29575)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 .. SELECTorEXPLAIN EXTENDEDstatement, the server can crash. (MDEV-23160)When
optimizer_switch='condition_pushdown_for_derived=on'is set and a view that includes a subquery is queried, the server crashes. (MDEV-16549)When an application-time period with an empty name is added to a table using
ALTER TABLE .. ADD PERIOD IF NOT EXISTS, the server can crash. (MDEV-18873)In previous releases, statements like the following could cause the server to crash:
ALTER TABLE t ADD PERIOD IF NOT EXISTS FOR `` (s,e);
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. (MENT-1415)
If the InnoDB change buffer is corrupted, the server can hang during shutdown. (MENT-1673, MDEV-30009)
When an InnoDB tablespace is in the non-canonical format from a previous
ALTER TABLEoperation that used theINSTANTalgorithm, InnoDB can fail to apply changes to the table during crash recovery and while preparing a backup with MariaDB Enterprise Backup. (MDEV-29438)When InnoDB tries to apply a
INSERT_HEAP_DYNAMICrecord to a secondary index in a table withROW_FORMAT=DYNAMICduring crash recovery, the operation can fail with an error. (MDEV-29559)In previous releases, the MariaDB ES error log could have errors like the following:
[ERROR] InnoDB: Not applying INSERT_HEAP_DYNAMIC due to corruption on [page id: space=5, page number=4]
When an InnoDB thread updates InnoDB persistent statistics and another InnoDB thread inserts a
BLOBconcurrently, the server can hang due to a deadlock. (MDEV-29883)If multiple threads request the same
ROW_FORMAT=COMPRESSEDpage that is not present in the InnoDB Buffer Pool, the server can hang due to a race condition. (MDEV-27983)
Can result in unexpected behavior
In the presence of replication filters, revoking privileges from a non-existing user on a primary (master) breaks replication on the replica (slave). (MDEV-28530)
When
replicate_wild_ignore_table='mysql.%'is set on a replica node, the replica node does not skip replicatedSET DEFAULT ROLEstatements. (MDEV-28294)When a Spider table has a prefix index, query results can be incorrect. (MDEV-27172)
InnoDB can extend tablespace files when additional capacity is not required. (MDEV-13013)
When an InnoDB table is being rebuilt and a
BLOBis 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
ER_NEED_REPREPAREerror code. (MDEV-17124)In previous releases, the following error would occur:
ERROR 1615 (HY000): Prepared statement needs to be re-prepared
When an InnoDB table contains virtual generated columns that are indexed, InnoDB fails to purge secondary index records. (MDEV-29666)
When using the InnoDB adaptive hash index, non-locking reads can return wrong results due to a potential ACID violation. (MDEV-28709, MDEV-29635, MDEV-27927)
When
SHOW COLUMNSis used on a temporary table, an empty result set is returned. (MDEV-28455)When a sequence is used as the default value in a table, rows inserted by an
INSERT ... SELECTstatement can be assigned the wrong values. (MDEV-29540)When a column has both a
UNIQUEindex and aFULLTEXTindex, full-text search usingMATCH(..) AGAINST(..)does not work properly. (MDEV-29778)If the server is started with the
--ssloption 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. (MDEV-29811)With MariaDB Enterprise Cluster, when
wsrep_sst_method='mariabackup'is configured, the joiner node ignores custom values for theinnodb_buffer_pool_filenamesystem variable, and the SST copies the buffer pool file to the default location instead. (MDEV-28968)When a
TIMESTAMPcolumn is filtered in a subquery inside theALLoperator, the results can be incorrect. (MDEV-27101)When the
wsrep_node_incoming_addresssystem variable does not contain a port number, thewsrep_incoming_addressesstatus variable shows0as the port number. (MDEV-28868)When
optimizer_switch='rowid_filter=on'is enabled, performance is impacted if therowidfilter contains no elements. (MDEV-28846)When a
INET6column is filtered in a subquery inside theALLoperator, the results can be incorrect. (MDEV-27099)When
XA COMMITis executed without an open XA transaction, the operation is still logged to the binary log. (MDEV-25616)In previous releases, when a replica node tried to apply the event, it would fail with the
ER_XAER_NOTAerror code:Last_SQL_Errno 1397 Last_SQL_Error Error 'XAER_NOTA: Unknown XID' on query. Default database: 'DATABASE_NAME'. Query: 'XA COMMIT ..'
When a tablespace file was originally built with MariaDB Enterprise Server 10.4 and earlier, InnoDB would refuse to add a column to the table using the
INSTANTalgorithm. (MDEV-28822)In previous releases, the operation would fail with the following error message:
ERROR 1845 (0A000): ALGORITHM=INSTANT is not supported for this operation. Try ALGORITHM=INPLACE
When InnoDB performs crash recovery of an
ALTER TABLEoperation that used theINSTANTalgorithm, the transaction isolation level isREAD COMMITTEDinstead ofREAD UNCOMMITTED(MDEV-29440)InnoDB Temporary Tablespace (
ibtmp1) grows continuously. (MDEV-28240)When the
TZenvironment variable is set on Windows, thesystem_time_zonesystem variable is incorrect. (MDEV-29102)When a bulk insert into an InnoDB table is performed, InnoDB does not update the table's persistent statistics. (MDEV-28327)
When the same values are used with an
INoperator and with an=operator, the optimizer chooses a different execution plan. (MENT-1630, MDEV-29662)
Related to install and upgrade
When
mariadb-upgradeis executed, spurious errors about table rebuilds are logged. (MDEV-29481)In previous releases, the following messages would be logged, even though the tool already mitigated the issues itself:
error: Table rebuild required. Please do "ALTER TABLE `TABLE_NAME` FORCE" or dump/reload to fix it!"
Changes in Storage Engines
This release originally incorporated MariaDB ColumnStore storage engine version 22.08.7
This release now incorporates MariaDB ColumnStore storage engine version 22.08.8
Interface Changes
ER_
CM_ error code addedOPTION_ MISSING_ REQUIREMENT ER_
DROP_ error code replaced with ER_PARTITION_ NON_ EXISTENT PARTITION_ DOES_ NOT_ EXIST ER_
INCONSISTENT_ error code addedSLAVE_ TEMP_ TABLE ER_
JSON_ error code addedHISTOGRAM_ PARSE_ FAILED ER_
KEY_ error code replaced with ER_COLUMN_ DOES_ NOT_ EXITS KEY_ COLUMN_ DOES_ NOT_ EXIST ER_
PARTITION_ error code addedCONVERT_ SUBPARTITIONED ER_
PROVIDER_ error code addedNOT_ LOADED ER_
SF_ error code addedOUT_ INOUT_ ARG_ NOT_ ALLOWED ER_
SLAVE_ error code addedSTATEMENT_ TIMEOUT ER_
VERS_ error code addedHIST_ PART_ FAILED mariadbd--slave-max-statement-time command-line option addedslave_
max_ system variable addedstatement_ time WARN_
OPTION_ error code addedCHANGING WARN_
SFORMAT_ error code addedERROR
Platforms
In alignment to the enterprise lifecycle, MariaDB Enterprise Server 10.6.11-6 is provided for:
CentOS 7 (x86_
64) Debian 10 (x86_
64, ARM64) Debian 11 (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 18.04 (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
Enterprise Cluster Topology with MariaDB Enterprise Server 10.6
Primary/Replica Topology with MariaDB Enterprise Server 10.6
HTAP Topology with MariaDB Enterprise Server 10.6 and MariaDB Enterprise ColumnStore 6
Single-Node Enterprise ColumnStore 6 with MariaDB Enterprise Server 10.6 and Object Storage
Single-Node Enterprise ColumnStore 6 with MariaDB Enterprise Server 10.6
Enterprise Spider Sharded Topology with MariaDB Enterprise Server 10.6
Enterprise Spider Federated Topology with MariaDB Enterprise Server 10.6
