JSON

Added JSON_ARRAYAGG. This returns a JSON array containing an element for each value in a given set of JSON or SQL values. It acts on a column or an expression that evaluates to a single value.

Added JSON_OBJECTAGG. This returns a JSON object containing key-value pairs. It takes two expressions that evaluate to a single value, or two column names, as arguments, the first used as a key, and the second as a value.

Storage Engines: Amazon S3 added

The S3 storage engine allows one to archive MariaDB tables in Amazon S3, or any third-party public or private cloud that implements S3 API ( MDEV-22606)

Both S3 tables and partitioned S3 tables are discoverable. This means that if you create a partitioned S3 table, both the partitioned table and its partitions can be directly used by another server that has access to the S3 storage. (MDEV-22088)

Privileges made more granular

Split SUPER privilege to smaller privileges (MDEV-21743). New privileges were added so that more fine grained tuning of what each user can do can be applied:

BINLOG ADMIN

BINLOG REPLAY

CONNECTION ADMIN

FEDERATED ADMIN

READ_ONLY ADMIN

REPLICATION MASTER ADMIN

REPLICATION SLAVE ADMIN

SET USER

The REPLICATION CLIENT privilege was renamed to BINLOG MONITOR. The old syntax is understood for compatibility (MDEV-21743).

The SHOW MASTER STATUS statement was renamed to SHOW BINLOG STATUS (MDEV-21743). The old syntax is understood for compatibility.

A number of statements changed the privileges that they require. The old privileges were historically inappropriately chosen in the upstream. 10.5.2 fixes this problem. Note, these changes are incompatible to previous versions. A number of GRANT commands might be needed after upgrade.

Galera: Full GTID support

Add full GTID support to Galera cluster (commit). With this feature all nodes in a cluster
will have the same GTID for replicated events originating from the cluster. Also added a new variable, wsrep_gtid_seq_no, to manually update the WSREP GTID sequence number in the cluster (similar to how the gtid_seq_no variable is used for non-WSREP transactions).

Add new mode to wsrep_OSU_method in which Galera checks storage engine of the affected table (MDEV-20051)

Galera: Replicate MariaDB GTID to other nodes in the cluster (MDEV-20720)

Binary Log and Replication: More metadata

Extended binlog metadata (MDEV-20477) to include new fields. This was done to solve replication issues when the Master and Slave table had different definitions for a column which could lead to data loss (MDEV-19708). It also enables us to do better replication with pluggable data types in the future.

The new metadata fields are:

Signedness of Numeric Columns

Character Set of Character Columns and Binary Columns

Column Name

String Value of SET Columns

String Value of ENUM Columns

Primary Key

Character Set of SET Columns and ENUM Columns

Geometry Type

Also added a new global variable, binlog_row_metadata to control the amount of metadata logged. Possible values are:

FULL - all metadata is logged

MINIMAL - only metadata required by a worker is logged

NO_LOG - No metadata is logged (default)

Binary log DDL entries can now be marked that they should be ignored if the target table doesn't exist (implicit IF EXISTS).

mariadb-binlog output is extended to show all replication flags. Example of output: SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=0, @@session.unique_checks=1, @@session.autocommit=1, @@session.check_constraint_checks=1, @@session.sql_if_exists=0/*!*/.

Comments

Comments loading...

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.