Release Notes for MariaDB Enterprise Server 10.6.9-5
MariaDB Enterprise Server 10.6.9-5 is a maintenance release of MariaDB Enterprise Server 10.6. This release includes a variety of fixes.
MariaDB Enterprise Server 10.6.9-5 was released on 2022-09-12.
Fixed Security Vulnerabilities
CVE (with cve.org link) | CVSS base score |
---|---|
CVE-2023-5157 | 7.5 |
CVE-2018-25032 | 7.5 |
CVE-2022-32091 | 6.5 |
CVE-2022-32089 | 6.5 |
CVE-2022-32084 | 6.5 |
CVE-2022-32082 | 6.5 |
CVE-2022-32081 | 6.5 |
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
UUID
data type has been backported from MariaDB Community Server 10.7 for more efficient storage ofUUID
values. (MENT-1459)
Notable Changes
- Galera has been updated to
26.4.13-1
- Debian 9 support has been discontinued.
- Red Hat Enterprise Linux 9 support has been added.
- Rocky Linux 9 support has been added.
- The
--max-statement-time
command-line option has been added formariadb-dump
with a default value of 0. (MDEV-18702)
- Session scope has been added for the
explicit_defaults_for_timestamp
system variable, in addition to global scope. (MDEV-29225)
- OpenSSL 3.0 support has been added for MariaDB Enterprise Cluster (powered by Galera) (MDEV-25949)
Issues Fixed
Can result in data loss
- When
mariadb-backup
is executed with the--rsync
command-line option, the backup tries to copy the InnoDB buffer pool dump file, which is located at the path defined by theinnodb_buffer_pool_filename
system variable. (MDEV-28781)- Starting with this release,
mariadb-backup
only copies the InnoDB buffer pool dump file during State Snapshot Transfers (SSTs) for MariaDB Enterprise Cluster, powered by Galera.
- Starting with this release,
- With MariaDB Enterprise Cluster, when
read_only
is enabled on a node, users without theSUPER
privilege can still write to the node. (MDEV-28546)
- With MariaDB Enterprise Cluster, when a value is retrieved from an InnoDB sequence using the
NEXTVAL()
function, the change is not replicated. (MDEV-27862)- Starting with this release, InnoDB sequences are properly replicated when they are defined with
NOCACHE
.
- Starting with this release, InnoDB sequences are properly replicated when they are defined with
- When an InnoDB table's collation is changed using
ALTER TABLE
with theINPLACE
orNOCOPY
algorithms, duplicate entries in unique indexes are not detected. (MDEV-26294)
- When InnoDB performs crash recovery on startup, recovery can fail when the redo log contains DDL statements. (MDEV-28864, MDEV-28870, MDEV-28923, MDEV-28977)
Can result in a hang or crash
- When
INSERT .. SELECT .. GROUP BY
is executed and theGROUP BY
clause contains a derived table, the server can crash. (MDEV-28617)
- When a query contains an
ANY(SELECT .. GROUP BY(SELECT ..))
predicand with a redundant subquery in theGROUP BY
clause, the server can crash. (MDEV-29139)
- When
ALTER TABLE .. ADD
is used to add a column with theINSTANT
algorithm, the server can crash if theROW_FORMAT
in the.frm
file does not match the actual row format used by the data file. (MDEV-26577)- For tables created prior to MariaDB Server 10.2, the
ROW_FORMAT
in the.frm
file could be inconsistent with the actual row format used by the data file. If the server were upgraded to MariaDB Enterprise Server 10.6, the inconsistency could remain.
- For tables created prior to MariaDB Server 10.2, the
- When
INSERT .. SELECT
is executed and theSELECT
query calls an aggregate or window function, the server can crash with a segmentation fault. (MDEV-26427)
- When the
JSON_EXTRACT()
function is called, the server can crash with a segmentation fault. (MDEV-29188)
- When a query uses the
DISTINCT
keyword and calls an aggregate function as an argument for an always-constant function, the server can crash. (MDEV-23809)- An always-constant function is a function that always returns a constant value, even if the function's arguments are not constant.
- For example, the
COLLATION()
function is an always-constant function.
- When
mariadb-backup
is executed with the--compress
and--parallel
options, the backup can hang due to a race condition between threads. (MDEV-29043)
- When an
EXISTS
predicate or anIN
,ALL
, orANY
predicand is used in an eliminated GROUP BY clause, the server can crash. (MENT-1606, MDEV-29350)
- When an
IN
subquery is used outside the context of a regular query (such as in a stored procedure), the server can crash. (MDEV-22001)
- When MariaDB Enterprise Cluster is used and the Galera replication TCP port receives non-Galera network traffic, the server can crash. (MDEV-25068)
- In previous releases, when the crash occurred, the following messages would appear in the MariaDB error log:
terminate called after throwing an instance of 'boost::exception_detail::clone_impl<boost::exception_detail::error_info_injector<std::system_error> >' what(): remote_endpoint: Transport endpoint is not connected [ERROR] mysqld got signal 6 ;
- In previous releases, when the crash occurred, the following messages would appear in the MariaDB error log:
- When a generated column is added to an InnoDB table with the INSTANT algorithm, the server can crash due to a buffer overflow. (MDEV-26420)
- When
CREATE VIEW
is executed with a view definition that contains an unknown column in an ON condition, the server can crash instead of raising an error with theER_BAD_FIELD_ERROR
error code. (MDEV-29088)
- When
FLUSH BINARY LOGS
is executed, the server can hang. (MDEV-28948)
- When the
innodb_open_files
system variable is too low, the server can crash if InnoDB accesses too many tables or partitions. (MDEV-26293)
- When InnoDB detects a corrupt data page, the server can crash. (MDEV-22388, MDEV-21098, MDEV-13542, MDEV-28457, MDEV-18519, MDEV-22388)
- When InnoDB performs crash recovery on startup, the server can crash when the redo log contains a
RENAME TABLE
statement performed against a table located in the system tablespace. (MDEV-28752)
Can result in unexpected behavior
- For multi-table
UPDATE
orDELETE
queries, the optimizer fails to apply partition pruning optimization for the table that is updated or deleted from. (MDEV-28246)
- When an
IN
condition contains a mixture of numeric and string values, results can be inconsistent. (MDEV-21445)
- When a sequence event is written to the binary log with
binlog_format=ROW
, the value ofbinlog_row_image
is not respected. (MDEV-28487)
- When a transaction can't be fully written to the binary log, but the transaction can be safely rolled back, a
LOST_EVENTS
incident event is written to the binary log. (MDEV-21443)- In previous releases, this problem could cause replica servers to encounter the following error:
Last_SQL_Errno 1590 Last_SQL_Error The incident LOST_EVENTS occurred on the master. Message: error writing to the binary log
- Starting with this release, a
LOST_EVENTS
incident is only written to the binary log when safe rollback is not possible.
- In previous releases, this problem could cause replica servers to encounter the following error:
- When a replica server replicates an incident event, the details about the failure are not in the primary server's error log, the replica server's error log, or the output of SHOW REPLICA STATUS. (MDEV-21087)
- When a backup is performed with
mariadb-backup
, the backup includes binary logs. (MDEV-28758)
- When a table is created from a
SELECT
statement that uses a recursive CTE, the table can use unexpected data types and contain truncated data if the calculated values from the recursive part of the CTE do not fit in the column types that are taken from the non-recursive part of the CTE. (MDEV-12325)- Starting with this release, the CTE calculation is aborted when the calculated values do not fit in the column types. When this occurs, a warning or error (depending on
sql_mode
is raised with theER_WARN_DATA_OUT_OF_RANGE
error code and the following error message:Out of range value for column 'COLUMN_NAME' at row ROW_NUM
- Starting with this release, the CTE calculation is aborted when the calculated values do not fit in the column types. When this occurs, a warning or error (depending on
- When
mariadb
client usesEditLine
instead ofreadline
(such as on Debian and Ubuntu), Unicode characters are not accepted. (MDEV-28197)
- When the optimizer chooses a semi-join optimization for a subquery, the LooseScan and FirstMatch strategies are not considered for certain queries where they would be appropriate, and they are considered for certain queries where they would be inappropriate. (MDEV-28749)
- When
FULLTEXT
search is performed on an InnoDB table, the results are incorrect when the search term contains an apostrophe ('). (MDEV-20797)- Starting with this release, when a search term contains an apostrophe ('), InnoDB tokenizes the word at the apostrophe, ignores the first token, and matches against the second token.
- After upgrading from old versions of MariaDB Server, some ALTER TABLE operations fail if
ALGORITHM=NOCOPY
is specified. (MDEV-28727)- In previous releases, the following error could be raised:
ERROR 1845 (0A000): ALGORITHM=NOCOPY is not supported for this operation. Try ALGORITHM=INPLACE
- In previous releases, the following error could be raised:
- When
optimizer_switch='not_null_range_scan=on'
is set, queries that use table elimination can produce incorrect results. (MDEV-28858)- Table elimination is used when the query performs a JOIN and has
const
tables.
- Table elimination is used when the query performs a JOIN and has
- When a replica server is replicating from a primary server that is too old to write
explicit_defaults_for_timestamp
to the binary log, the replica server ignores its own value and assumes that the value should beOFF
. (MDEV-29078)- Starting with this release, the replica server determines an optimal value for
explicit_defaults_for_timestamp
based on the version of the primary server. If the primary server is too old to write its value to the binary log, the replica server uses its own value.
- Starting with this release, the replica server determines an optimal value for
- When a
UUID
orINET6
column is referenced in aWHERE col IN(SELECT ..)
subquery of anUPDATE
orDELETE
statement, the query does not affect the correct number of rows. (MDEV-28491)
- When a
BINARY
column is used to storeUUID
s and aSELECT
statement filters the column with anIN
clause, the query can be very slow if theUUID
s are specified in hexadecimal. (MDEV-25020)
DROP DATABASE
is case-insensitive. (MDEV-28802)
- When
mariadb-backup
is used to prepare a backup, the operation can fail if the backup contains DDL. (MDEV-28974)- In previous releases, when the backup failed, the output could contain messages like the following:
[ERROR] InnoDB: Attempted to open a previously opened tablespace. Previous tablespace:./DATABASE_NAME/TABLE_NAME.ibd uses space ID: SPACE_ID. Cannot open filepath: DATABASE_NAME/TABLE_NAME.ibd which uses the same space ID. [Warning] InnoDB: We do not continue the crash recovery, because the table may become corrupt if we cannot apply the log records in the InnoDB log to it. To fix the problem and start mariadbd: [Note] InnoDB: 1) If there is a permission problem in the file and mysqld cannot open the file, you should modify the permissions. [Note] InnoDB: 2) If the tablespace is not needed, or you can restore an older version from a backup, then you can remove the .ibd file, and use --innodb_force_recovery=1 to force startup without this file. [Note] InnoDB: 3) If the file system or the disk is broken, and you cannot remove the .ibd file, you can set --innodb_force_recovery. ##mariadb-backup##: srv_start() returned 11 (Generic error).
- When
mariadb-backup
is used to perform a backup while DDL is being executed, the output can contain excessive messages about DDL tracking. (MDEV-29137)- In previous releases, the output could contain many messages like the following:
DDL tracking : modify SPACE_ID "./DATABASE_NAME/TABLE_NAME.ibd"
- In previous releases, the output could contain many messages like the following:
- When the
JSON_ARRAY
,JSON_ARRAY_APPEND
,JSON_ARRAY_INSERT
,JSON_INSERT
,JSON_SET
, orJSON_REPLACE
functions are called with aLONGTEXT
column, the result is truncated. (MDEV-29264)
Changes in Storage Engines
- This release originally incorporated MariaDB ColumnStore storage engine version 22.08.1.
- This release previously incorporated MariaDB ColumnStore storage engine version 22.08.2.
- This release previously incorporated MariaDB ColumnStore storage engine version 22.08.3.
- This release now incorporates MariaDB ColumnStore storage engine version 22.08.4.
Interface Changes
- columnstore_cmapi_host system variable added
- columnstore_cmapi_key system variable added
- columnstore_cmapi_port system variable added
- columnstore_cmapi_version system variable added
- columnstore_s3_key system variable added
- columnstore_s3_region system variable added
- columnstore_s3_secret system variable added
- explicit_defaults_for_timestamp system variable dynamic changed from
No
toYes
mariadb
--enable-cleartext-plugin command-line option added
mariadb-backup
--sst-max-binlogs command-line option removed
mariadb-dump
--max-statement-time command-line option added
mariadbd
--spider-direct-aggregate command-line option added
- spider_direct_aggregate system variable added
sys_guid
FUNCTION plugin added
uuid
DATA TYPE plugin added
uuid
FUNCTION plugin added
Platforms
In alignment to the enterprise lifecycle, MariaDB Enterprise Server 10.6.9-5 is provided for:
- CentOS 7 (x86_64)
- Debian 10 (x86_64, ARM64)
- Debian 11 (x86_64, ARM64)
- Microsoft Windows (x86_64)
- 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
Upgrade Instructions
Content reproduced on this site is the property of its respective owners,
and this content is not reviewed in advance by MariaDB. The views, information and opinions
expressed by this content do not necessarily represent those of MariaDB or any other party.