Announcing MariaDB Community Server 10.8 GA and 10.9 RC

We are pleased to announce MariaDB Community Server 10.8 as GA (Generally Available) and the first RC (Release Candidate) of MariaDB Community Server 10.9.

MariaDB Community Server 10.8 now GA

MariaDB Community Server 10.8 GA adds features such as optimistic ALTER TABLE for replicas, which dramatically reduces the replica lag for long-running schema changes, resulting in zero replication lag in many situations. Read this blog for a full list of all new features in the 10.8 release series. The MariaDB Community Server 10.8 release series started with Preview Releases, then an RC release in February 2021. MariaDB Community Server 10.8.3 marks the first GA release in this series.

MariaDB Community Server 10.9 now RC

The first MariaDB Community Server 10.9 Release Candidate (RC) is available today for testing. Thank you to all who participated in community testing and extensive internal testing of the Feature Preview Releases which was released in March 2022.

Community Server 10.9 RC Complete List of Features

For the 10.9 community server release series, we added several new JSON capabilities, added support for HashiCorp Vault, added new MariaDB Galera Cluster functionality and enhanced our System Versioned Tables feature. Specifically, MariaDB Community Server 10.9 RC includes the following new features:

For Developers
  • A new JSON_OVERLAPS() function, which compares JSON documents to determine if they have any key-value pairs or array elements in common.
SELECT JSON_OVERLAPS('{"A": 1, "B": {"C":2}}', '{"A": 2, "B": {"C":2}}') AS is_overlap;
+---------------------+
| is_overlap          |
+---------------------+
| 1                   |
+---------------------+
  • To define the position in a JSON array from the end to the beginning, negative indexes or last can be used as the last element of an array for an JSON array of a JSON path, where the JSON path is used as a parameter in a JSON function.

SELECT JSON_REMOVE(@json, '$.A[-10]');

The keyword last can be used to define the last element of an array SELECT JSON_REMOVE(@json, '$.A[last]');

  • Range notation for JSON path using the keyword to define a range of elements. SELECT JSON_REMOVE(@json, '$.A[1 to 3]');

 

For DevOps and DBAs
  • HashiCorp Vault is supported as an encryption key management solution for data-at-rest encryption through the Key Management Plugin for HashiCorp Vault.
  • ANALYZE [FORMAT=JSON] <select> has been extended to allow analyzing a query which is currently running in another connection by running SHOW ANALYZE FORMAT=JSON for <conn_id>.
  • SHOW EXPLAIN for <conn_id>, which returns an EXPLAIN for a query running in another connection, has been extended to return the more detailed JSON output by using the syntax SHOW EXPLAIN [FORMAT=JSON] FOR <conn_id>.
    • Syntax EXPLAIN [ FORMAT=JSON] FOR CONNECTION <conn_id> is also supported.
  • System-Versioned Tables can automate the creation of new HISTORY partitions partitioned by INTERVAL/LIMIT using the keyword AUTO when creating a table.

CREATE TABLE t1 (x int) WITH SYSTEM VERSIONING
PARTITION BY system_time INTERVAL 1 months AUTO;

In this case a new HISTORY partition will be created on a monthly basis, storing old versions of the table data.

  • New status monitoring features for MariaDB Galera Cluster:
    • MariaDB Galera Cluster has added a new feature to save wsrep node status changes in a dedicated machine readable JSON file. This allows an easier way for reading and interpreting the status file by an external monitoring tool.
      A filename needs to be specified via the option wsrep_status_file to enable the feature.
    • MariaDB Galera Cluster now includes progress reporting of MariaDB Backup based SST when wsrep-debug=1 is set and the tool pv is installed. The SST progress report is then written into the server log.

2022-03-24 13:10:43 0 [Note] WSREP: REPORTING SST PROGRESS: '{ "from": 1, "to": 3, "total": 23106759472, "done": 23106759472, "indefinite": -1 }'

  • The command-line tool mariadb-binlog now supports the new options --do-domain-ids, --ignore-domain-ids, and --ignore-server-ids.
    mariadb-binlog can now be used to produce results filtered by domain ids server ids.
  • The command-line tool mariadb-dump now supports the new option –order-by-size.
    The new option can be used to create a dump of the tables of a database according to their size, smaller tables first.
  • Log files for the storage engine MyRocks can now be stored in a user defined directory by using the new parameter rocksdb_log_dir.

We encourage you to Try MariaDB Community Server 10.9 RC today. Please note that we do not recommend running RC releases in production.

 

Resources