Release Notes for MariaDB Enterprise Server 10.4.21-13

Overview

This thirteenth release of MariaDB Enterprise Server 10.4 is a maintenance release. This release includes a variety of fixes.

MariaDB Enterprise Server 10.4.21-13 was released on 2021-09-14.

Fixed Security Vulnerabilities

CVE (with cve.org link)

CVSS base score

CVE-2021-2389

5.9

CVE-2021-46666

5.5

CVE-2021-46658

5.5

CVE-2021-46657

5.5

CVE-2021-2372

4.4

Backported Features

This release of MariaDB Enterprise Server includes features backported from MariaDB Enterprise Server 10.6.

  • MariaDB Enterprise Audit allows database-specific and table-specific filters. (MENT-65)

    For example:

    {
      "connect_event" : "ALL",
      "table_event" : ["READ","WRITE",{"ignore_tables" : "mysql.*"}],
      "query_event" : ["DDL",{"tables" : "test.t2"}]
    }
    
  • MariaDB Enterprise Audit can be configured to not start the server if Audit Filters are invalid. (MENT-1243)

  • Enhanced consistency for Semi-Sync Replication

    • When rpl_semi_sync_slave_enabled=ON, consistency is guaranteed for a Primary server in an HA (Primary/Replica) topology when using semi-synchronous replication. (MDEV-21117)

    • Prior to this release, when using semi-synchronous replication, if a Primary crashed before sending a transaction to the Replica, on restart the Primary could recover incomplete InnoDB transactions when rejoining as a Replica.

    • With this release, when using semi-synchronous replication and with rpl_semi_sync_slave_enabled=ON, incomplete transactions will be rolled-back on the Replica, ensuring the new Primary (former Replica) and new Replica (former Primary) remain in sync.

This release of MariaDB Enterprise Server includes features backported from MariaDB Enterprise Server 10.5.

  • Support added for Galera Global Transaction ID in MariaDB Enterprise Cluster (Galera), which replicates MariaDB Global Transaction ID to other nodes in the cluster (MENT-932)

Notable Changes

  • Galera updated to 26.4.9

  • ARM64 is now supported for several platforms.

  • The script wsrep_sst_mariabackup checks all server-related configuration groups when processing a configuration file. (MDEV-25669)

    • Prior to this release, only the [mysqld] configuration group was checked when processing a configuration file.

  • MariaDB Enterprise Backup expects --stream=mbstream to stream a backup using the included mbstream utility. (MDEV-15730)

    • Prior to this release, MariaDB Enterprise Backup expected --stream=xbstream, even though the xbstream utility had been renamed to mbstream.

  • InnoDB no longer acquires advisory file locks by default. (MDEV-24393)

  • The information_schema.KEYWORDS table has been added and can be used to view details about SQL keywords. (MDEV-25129)

  • The information_schema.SQL_FUNCTIONS table has been added and can be used to view details about built-in functions. (MDEV-25129)

  • When using data-at-rest encryption with the file_key_management encryption plugin, InnoDB will automatically disable key rotation checks. (MDEV-14180)

  • Removed SSL ciphers RC4-MD5 and RC4-SHA for mariadbd binaries compiled with WolfSSL. (MDEV-26092)

Issues Fixed

Can result in data loss

  • When an ALTER TABLE ... ADD COLUMN statement is executed with ALGORITHM=INSTANT, a warning is not raised when the operation causes the default value of a DATE column to be truncated. (MDEV-25971)

Can result in a hang or crash

  • Possible server crash when pushing a WHERE condition over a mergeable derived table / view / CTE DT into a grouping view / derived table / CTE V whose item list contained set functions with constant arguments. (MDEV-25635)

  • Server crashes on second execution of a stored procedure or a prepared statement when the corresponding query executes a window function on a view, CTE, or derived table. (MDEV-25565)

  • Server crashes possible when executing a prepared statement with a hanging recursive CTE. (MDEV-26135)

  • Server crashes while executing query with a CTE in a prepared statement or stored procedure. (MDEV-26025)

  • Server crashes while executing query with a recursive CTE that is indirectly used twice. (MDEV-26202)

  • Server crashes due to infinite recursion while processing an embedded recursive CTE with missing RECURSIVE. (MDEV-26095)

  • Server crashes in InnoDB deadlock checker under high load. (MDEV-25594)

  • Server crashes when a virtual generated column has a prefix index. (MDEV-26220)

  • Server crashes possible when using virtual generated columns. (MDEV-18166, MDEV-18249)

  • Server crashes while executing DELETE when a YEAR column is truncated. (MDEV-17890)

  • Server crashes while executing SET ROLE when a hostname cannot be resolved. (MDEV-26081)

  • Server crashes when a subquery references an outer column in an ORDER BY clause. (MDEV-25629)

  • Server crashes due to a stack overrun in the query optimizer while executing query with more than 32 equality conditions that compare columns of different tables (such as tableX.colX=tableY.colY). (MDEV-17783)

  • Server crashes when a window function is the left expression of an IN(SELECT ..) subquery. (MDEV-25630)

  • Possible deadlock on a Replica server using GTID Replication when slave_parallel_mode=optimistic and OPTIMIZE TABLE, REPAIR TABLE, or ANALYZE TABLE is executed. (MDEV-17515)

  • Server crashes when ALTER TABLE .. ADD FULLTEXT INDEX fails on an InnoDB table. (MDEV-25721)

  • Server crashes while executing TRUNCATE on an InnoDB table with a Full-Text Index. (MDEV-25663)

  • Server crashes while executing ALTER TABLE on an InnoDB table with virtual generated columns that are indexed. (MDEV-25872)

  • Server crashes while executing CHECK TABLE when innodb_read_only is enabled. (MDEV-25886)

  • Server crashes when a connection is killed while executing ALTER TABLE after previously locking the table with LOCK TABLE. (MDEV-17749)

  • Server crashes when the global value of the system_versioning_asof system variable is set using a stored function that reads the value of another global system variable. (MDEV-16481)

  • Server crashes when MariaDB Enterprise Audit is active and usernames longer than 256 characters are used. (MENT-1019)

  • Server crashes when MariaDB Enterprise Audit is active and audit log file rotation is triggered. (MENT-1207)

  • Server crashes while executing query with a CTE that is used at least twice and that references an embedded recursive CTE. (MDEV-26108)

  • Possible crash with transactions having changes for tables with no primary key to apply in parallel, when using MariaDB Enterprise Cluster. (MDEV-25551)

  • Server crashes when executing CREATE TABLE to create a Spider table with a COMMENT value that does not contain embedded double quotes. (MDEV-26139)

  • Server crashes when a client connects during shutdown. (MDEV-18353)

Can result in unexpected behavior

Interface Changes

Platforms

In alignment to the enterprise lifecycle, MariaDB Enterprise Server 10.4.21-13 is provided for:

  • CentOS 7 (x86_64)

  • CentOS 8 (x86_64, ARM64)

  • Debian 9 (x86_64, ARM64)

  • Debian 10 (x86_64, ARM64)

  • Red Hat Enterprise Linux 7 (x86_64)

  • Red Hat Enterprise Linux 8 (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)

  • Microsoft Windows (x86_64)

Some components of MariaDB Enterprise Server might not support all platforms. For additional information, see "MariaDB Corporation Engineering Policies".