Announcing MariaDB Community Server 12.1 GA

spacer

We are excited to announce the General Availability of MariaDB Community Server 12.1. Building upon the major foundational changes introduced in the MariaDB Community Server 12.0, this version focuses on delivering significant advancements in performance, compatibility, and tooling, ensuring MariaDB remains the best open-source relational database for modern applications.

MariaDB Community Server 12.1 GA delivers faster operational queries, enhances large-scale replication stability, and deepens compatibility features to simplify migration from proprietary database systems. We encourage all users and developers to explore the new capabilities and provide feedback.


What’s New in MariaDB 12.1

Smarter Performance and Scalability

This release introduces improvements designed to handle high concurrency and massive data volumes more efficiently, reducing contention and speeding up critical database operations.

  • Segmented Key Cache for Aria: The Aria storage engine now features a segmented key cache, controlled by the aria_pagecache_segments system variable. This significantly reduces contention under heavy concurrent workloads, boosting performance for Aria-based tables. System and temporary tables, which also use the Aria storage engine, will similarly benefit from this reduced contention.
  • MDL Scalability Improvements: MariaDB 12.1 includes improvements to Metadata Lock (MDL) scalability, which is crucial for high-concurrency environments with frequent schema operations.
  • Parallel Replication for Galera Replicas: Enhancements to parallel replication for Galera cluster replicas improve the speed and efficiency of applying changes across the cluster, ensuring replicas stay in sync faster.
  • Faster Vector Distance Calculations: MariaDB has optimized vector distance calculations, which provided a significant benefit for applications relying on vector search capabilities. This optimization is enabled automatically for applicable vectors (like Matryoshka embeddings from OpenAI) and results in vector search being 30-50% faster (depending on the data) at the same recall level.
  • Buffered Logging for Audit Plugin: The audit plugin now supports buffered logging, which significantly reduces the performance overhead of logging audit events during peak usage. The size of the buffer is defined using the new system variable server_audit_file_buffer_size.

Deeper Oracle and MySQL Compatibility

MariaDB continues to invest in features that ease the path to database freedom, further simplifying the migration of complex applications from proprietary databases like Oracle.

  • Associative Arrays: This release adds support for associative arrays with the syntax DECLARE TYPE .. TABLE OF .. INDEX BY, further aligning MariaDB’s procedural language capabilities with Oracle’s PL/SQL.
  • Oracle-Style Outer Join Syntax: Support for the Oracle-style outer join syntax using the ( + ) operator has been added when running in Oracle mode, allowing for easier porting of legacy queries.
  • Enhanced DROP USER Behavior: In Oracle mode, DROP USER will now fail by default if the user has active sessions, providing safer user management consistent with proprietary systems.
  • caching_sha2_password Plugin: The addition of the caching_sha2_password authentication plugin enhances compatibility with MySQL compatible clients expecting this authentication method.

Query Optimization and Diagnostics

New optimizer hints and diagnostic tools give DBAs and developers greater control over query execution and deeper, actionable insight into server data processing.

  • Expanded Optimizer Hints: New optimizer hints are available, including JOIN_INDEX/NO_JOIN_INDEX, GROUP_INDEX/NO_GROUP_INDEX, ORDER_INDEX/NO_ORDER_INDEX, SPLIT_MATERIALIZED/NO_SPLIT_MATERIALIZED, DERIVED_CONDITION_PUSHDOWN/NO_DERIVED_CONDITION_PUSHDOWN, MERGE/NO_MERGE, improving MySQL compatibility and allowing fine-grained control over index usage and query plan generation.
  • Functional Indexes in GROUP/ORDER BY: The optimizer now recognizes expressions in the GROUP BY and ORDER BY clauses that match an existing virtual column and can use a corresponding  index, if available.

General Improvements and Administration

MariaDB Community Server 12.1 includes several general improvements that enhance daily administration and stability.

  • Wildcards for mariadb-dump: The mariadb-dump utility now supports the use of wildcards with the -L or –wildcards option, offering greater flexibility when selecting objects for backup and export.
  • Galera Write Set Retry: Galera nodes can now be configured to retry applying write sets after a transient failure, increasing cluster resilience and stability. This is managed by the wsrep_applier_retry_count system variable.

MariaDB Community Server 12.1 GA is part of our rolling release cycle, continually bringing new features and enhancements to our community. We encourage you to explore the latest enhancements and contribute your valuable feedback, as we deliver quarterly updates on the path to our next Long-Term Support (LTS) version (12.3).

Download MariaDB Community Server 12.1 GA here.