All pages
Powered by GitBook
1 of 4

Loading...

Loading...

Loading...

Loading...

Release Notes - MariaDB 12.0 Rolling Releases

Release notes for MariaDB Community Server 12.0 Rolling Release series

MariaDB 12.0 Changes & Improvements

An overview of changes, improvements, and what's new in MariaDB Community Server 12.0

MariaDB 12.0 is a rolling release. It is an evolution of MariaDB 11.8 with several entirely new features.

New Features

Security

  • Support for passphrase protected keys ()

    • variable

  • New statement for performing actions as another user ()

  • Implement SHA2 support for file_key_management.so plugin (TDE) ()

Data types

  • Comparison (stored_func(),1)=ROW(1,1) erroneously called stored_func() twice per row. It led to a performance degradation, as well as to a double execution of the possible stored function side effects. ()

Stored Routines

  • Add support for the pre-defined weak SYS_REFCURSOR ()

    • system variable limits the number of opened at the same time

Server

  • Add the FM format to , which suppresses following padding ()

  • and now support ()

Optimizer

  • optimization can now be applied for reverse-ordered scans ()

  • optimization can now applied for reverse-ordered scans ()

  • Loose Index Scan ("Use index for group-by") optimization can now use indexes with DESC key parts ()

  • find_order_in_list mismatch when order item needs fixing() ()

Optimizer hints

  • Add support for ()

GIS

New functions. These functions improve compatibility with MySQL 8.

  • ()

  • ()

  • ()

  • ()

Trigger

  • Add support for TRIGGERS that fire on multiple events ()

Replication

  • Server displays if it was started with the option ()

  • has been added as a system variable (previously it was just an option). It determines whether to show the user and password in (SHOW SLAVE HOSTS) on the primary.

  • system variable added (previously it was just an option), which permits not skipping events having our server id.

  • Ensure that creation and usage of temporary tables in replication is predictable (

Galera

  • In , needless foreign key checks during Incremental State Transfers are now avoided ()

Audit Plugin

  • The now logs HOST:PORT of incoming connections instead of just the host ()

  • Added tls_version field for connection audit plugins ()

Configuration

  • Get option group suffix from $MARIADB_GROUP_SUFFIX in addition to $MYSQL_GROUP_SUFFIX ()

mariadb Client

  • Can set an alternative directory path for searching scripts invoked via the source command, with the mariadb client option ()

Variables

For a list of all new variables, see .

Removed

  • , deprecated in

  • , deprecated in

  • , deprecated in .

List of All MariaDB 12.0 Releases

Date
Release
Status
Release Notes
Changelog

If the join_condition is specified via USING (column_list), the query plan depends on the sequence of tables in the query (MDEV-36592)

  • Add support for subquery optimizer hints (MDEV-34888)

  • Add support for join order hints (MDEV-34870)

    • JOIN_FIXED_ORDER similar to existing STRAIGHT_JOIN hint

    • JOIN_ORDER to apply the specified table order

    • JOIN_PREFIX to hint what tables should be first in the join

    • JOIN_SUFFIX to hint what tables should be last in the join

  • Add support for the hint (MDEV-34860)

  • (MDEV-34159)

  • (MDEV-34160)

  • (MDEV-34277)

  • (MDEV-34276)

  • (MDEV-34278)

  • )
    • system variable.

    Preview

    7 Aug 2025

    MariaDB 12.0.2

    GA

    Release Notes

    Changelog

    5 Jun 2025

    MariaDB 12.0.1

    RC

    Release Notes

    Changelog

    MDEV-14091
    MDEV-20299
    MDEV-34712
    MDEV-36322
    MDEV-20034
    MDEV-36216
    MDEV-22491
    MDEV-36094
    MDEV-34413
    MDEV-32732
    MDEV-36607
    MDEV-35504
    MDEV-34137
    MDEV-34138
    MDEV-34141
    MDEV-34158
    MDEV-10164
    MDEV-27669
    MDEV-34822
    MDEV-1282
    MDEV-33834
    MDEV-21375
    MDEV-23818
    MariaDB 10.5.0
    MariaDB 10.5.3
    MariaDB 5.5
    Galera

    26 March 2025

    MDEV-36099

    MariaDB 12.0.1 Release Notes

    MariaDB 12.0.1 is a Release Candidate (RC) release of MariaDB Community Server 12.0, released on 2025-06-05

    Release date: 5 Jun 2025

    is a . It is an evolution of with several entirely new features.

    MariaDB 12.0.1 is a release.

    For an overview of MariaDB 12.0 see the Changes and Improvements in MariaDB 12.0 page.

    Thanks, and enjoy MariaDB!

    Notable Items

    Security

    • Support for passphrase protected keys (MDEV-14091)

    • New SET SESSION AUTHORIZATION (MDEV-20299)

    • Implement SHA2 support for file_key_management.so plugin (TDE) (MDEV-34712)

    Data types

    • Comparison ROW(stored_func(),1)=ROW(1,1) erroneously called stored_func() twice per row. It led to a performance degradation, as well as to a double execution of the possible stored function side effects. (MDEV-36322)

    Stored Routines

    • Add support for the pre-defined weak SYS_REFCURSOR (MDEV-20034)

    Server

    • TO_CHAR FM format not recognized in SQL_MODE=Oracle (MDEV-36216)

    • Support mariadb-check and CHECK TABLE with SEQUENCE (MDEV-22491)

    Optimizer

    • find_order_in_list mismatch when order item needs fixing() (MDEV-36607)

    • If the join_condition is specified via USING (column_list), the query plan depends on the sequence of tables in the query (MDEV-36592)

    • Add support for optimizer hints (MDEV-35504)

      • QB_NAME()

      • NO_RANGE_OPTIMIZATION()

      • NO_ICP()

      • MRR(), NO_MRR()

      • BKA(), NO_BKA()

      • BNL(), NO_BNL()

    • Add support for subquery optimizer hints ()

      • SEMIJOIN()

      • SUBQUERY()

    • Add support for join order hints ()

      • JOIN_FIXED_ORDER similar to existing STRAIGHT_JOIN hint

      • JOIN_ORDER to apply the specified table order

      • JOIN_PREFIX to hint what tables should be first in the join

    • Add support for the MAX_EXECUTION_TIME hint ()

    GIS

    New GIS functions. These functions improve compatibility with MySQL 8.

    • (MDEV-34137)

    • (MDEV-34138)

    • (MDEV-34141)

    • (MDEV-34158)

    • ()

    • ()

    • ()

    • ()

    • ()

    Trigger

    • Add support for TRIGGERS that fire on multiple events (MDEV-10164)

    Replication

    • Server now displays if it was started with option (MDEV-27669)

    Galera

    • Skip FK checks in Galera during applying in IST (MDEV-34822)

    Audit Plugin

    • Log HOST:PORT of incoming connection instead of just the host (MDEV-1282)

    • Add tls_version field for connection audit plugins (MDEV-33834)

    Configuration

    • Get option group suffix from $MARIADB_GROUP_SUFFIX in addition to $MYSQL_GROUP_SUFFIX (MDEV-21375)

    Clients and Scripts

    • Can set an alternative directory path for searching scripts invoked via the source command, with the --script-dir mariadb client option (MDEV-23818)

    Changelog

    For a complete list of changes made in MariaDB 12.0.1, with links to detailed information on each push, see the changelog.

    Contributors

    For a full list of contributors to MariaDB 12.0.1, see the MariaDB Foundation release announcement.


    Download
    Release Notes
    Changelog
    Overview of 12.0
    Alternate download from mariadb.org
    MariaDB 12.0
    rolling release
    MariaDB 11.8
    Release Candidate (RC)

    The most recent release of MariaDB 12.0 is:

    Stable (GA)

    MariaDB 12.0.0

    The most recent release of MariaDB 12.0 is:

    Stable (GA)

    MariaDB 12.0.2 Release Notes

    MariaDB 12.0.2 is a Stable (GA) release of MariaDB Community Server 12.0, released on 2025-08-07

    Release date: 7 Aug 2025

    MariaDB 12.0.2 is a release. It is an evolution of with several entirely new features.

    MariaDB 12.0 is a . One is expected to upgrade to MariaDB 12.1.2, there will be no 12.0.3.

    Thanks, and enjoy MariaDB!

    JOIN_SUFFIX to hint what tables should be last in the join

    MDEV-34888
    MDEV-34870
    MDEV-34860
    MDEV-34159
    MDEV-34160
    MDEV-34277
    MDEV-34276
    MDEV-34278
    MariaDB 12.0.2
    Download Now
    Alternate download from mariadb.org

    For an overview of MariaDB 12.0 see the Changes and Improvements in MariaDB 12.0 page.

    Thanks, and enjoy MariaDB!

    Notable Items

    Storage Engines

    InnoDB

    • After SET GLOBAL innodb_buffer_pool_size was aborted while attempting to shrink the buffer pool, executing SET GLOBAL innodb_adaptive_hash_index=ON could lead to corruption of the adaptive hash index. (MDEV-36863)

    • Fatal InnoDB error: Unknown error Temp file write failure (MDEV-36017)

    • When innodb_buffer_pool_size is being shrunk while there are no data pages cached, InnoDB could hang or crash. (MDEV-37263)

    • After a successful shrinking of innodb_buffer_pool_size, there will be no message about it in the server error log.

      • After a failed shrinking of innodb_buffer_pool_size, the adaptive hash index will not be re-enabled if innodb_adaptive_hash_index was ON when SET GLOBAL innodb_buffer_pool_size=... started to execute. ()

    • AUTO_INCREMENT leads to non-serializable on results ()

    • Vector index was corrupted if one statement was rolled back (e.g. insert violating a unique constraint) in the middle of a larger transaction. ()

    • The new parameter innodb_linux_aio controls which Linux implementation to use for innodb_use_native_aio=ON. ()

      • innodb_linux_aio=auto is equivalent to innodb_linux_aio=io_uring when it is available, and falling back to innodb_linux_aio=aio when not.

      • Previously, only one implementation (libaio or io_uring) was available. Currently, if io_uring is disabled in the environment, we will fall back to the older libaio interface.

    Aria

    • Assertion when adding FK to MyISAM/Aria table with a vector index (MDEV-37022)

    Data Definition - Alter Table

    • Adding (with ALTER TABLE) a UNIQUE constraint that is USING HASH to a table with foreign keys could've caused the table to become corrupted. (MDEV-36852)

    • DROP DEFAULT makes SHOW CREATE non-idempotent (MDEV-29001)

    Partitioning

    • Server crashes in do_mark_index_columns instead of ER_DUP_ENTRY on partitioned table (MDEV-36817)

    • A replica would crash while replicating UPDATE and DELETE DML statements that target a table which previously had a partition that was converted to a separate table via ALTER TABLE .. CONVERT PARTITION .. TO TABLE. For example, if the command looked like ALTER TABLE t1 CONVERT PARTITION p1 TO TABLE t_new; the replica would crash when trying to update/deleterows in table t1 after running the command. (MDEV-36906)

    Data Definition - Create Table

    • CREATE OR REPLACE with self-referencing CHECK hangs forever, cannot be killed (MDEV-29155)

    Server

    • Segfault on INTERSECT ALL with UNION in Oracle mode (MDEV-25158)

    • In certain cases privileges on sequences were too restrictive, for example, SELECT on a table might've erroneously required INSERT privilege on a sequences (MDEV-36870)

    mariabackup

    • This commit fixes a bug where Aria tables are used in (master->slave1->slave2) and a backup is taken on slave2. In this case it is possible that the replication position in the backup, stored in mysql.gtid_slave_pos, will be wrong. This will lead to replication errors if one is trying to use the backup as a new slave. (MDEV-36143)

    • Maria-backup would crash during the 'maria_recovery' part. This could happen if server was doing repair or creating indexes while the backup was running. (MDEV-36860)

    Optimizer

    • MariaDB server crash when a query includes a derived table containing unnamed column. (MDEV-24588)

    • Crash in add_keyuses_for_splitting() when joining with a derived table (MDEV-30711)

    • Split Materialized code: last_refills is never set in 11.0+ (MDEV-36323)

    • Don't generate index_merge plans, if a column is present in both Secondary Key and Primary Key indexes and either of the indexes include it with DESC order (as the scan itself is not a ROR scan). (MDEV-36410)

    • Incorrect handling of null values on join conditions. ()

    JSON

    • Starting from 10.11.12, Incorrect handling of UTF-8 characters (and other character sets requiring more than a single byte representation) in the minimum/maximum positions of a table during the execution of ANALYZE TABLE tbl PERSISTENT FOR ALL resulted in an endless loop consuming more memory and prevented the server from terminating. (MDEV-36765)

    Galera

    • Galera updated to 26.4.23

    • galera_3nodes.inconsistency_shutdown test occasionally hangs (MDEV-36968)

    • Galera-26.4.23 corrects an incompatibility with OpenZFS >= 2.3.0 enabling the use of galera on this filesystem.

    Replication

    • semi sync makes the master unresponsive when a replica is stopped (MDEV-36934)

    • parallel slave ALTER-SEQUNCE attempted to binlog out-of-order (MDEV-35570)

    • mysqldump --dump-slave always starts stopped slave (MDEV-7611)

    • Optimize Rows_log_event Reporting of Process Info (MDEV-36839)

    • Seconds_Behind_Master Spike at Log Rotation on Parallel Replication ()

    Stored routines

    • Crash when calling stored function in FOR loop argument (MDEV-26115)

    Authentication and Privilege System

    • ALTER TABLE require ALTER privilege on sequence from DEFAULT value expression (MDEV-36280)

    Locking

    • Deadlock does not rollback transaction fully (MDEV-36959)

    Data Manipulation - Insert

    • UNIQUE constraint that was USING HASH and UNIQUE constrant WITHOUT OVERLAPS could be violated under heavy load in READ COMMITTED transaction isolation mode. (MDEV-37199)

    Character Sets

    • Changing the server character set in my.cnf could cause debian-start script to fail with "Illegal mix of collations" (MDEV-36815).

    Plugin - AWS key management

    • aws_key_management compilation was previously broken, is now fixed. plugin can be compiled again. As before, -DNOT_FOR_DISTRIBUTION=ON is necessary to build it. (MDEV-30831)

    Packaging

    • mariadb systemd mult-instance service was changed to not attempt changes to the permissions on its pam helper server. This prevented unconstructive behaviour and errors in the systemd journal when starting the mariadb@.service. (MDEV-36738)

    Sequences

    • Remove the error codes added to 10.11 by the MDEV-36032 patch (MDEV-36856)

    XA

    • DML committed within XA transaction block after deadlock error and implicit rollback (MDEV-37141)

    General

    • Add option to not collect statistics for long char/varchars (MDEV-36536)

    • Packages for RHEL8 no longer depend on liburing. The RHEL8 kernel had insufficient kernel support so linking was an unneeded dependency. libaio was sufficient (MDBF-1042)

    • SLES 15 SP6 and SLES 15 SP7 are new packages in this release. Because of incompatibilities of packages between SLES service pack versions there are now separate packages for 15sp6 and 15sp7. An upgradeable repo file should include "sles/$releasever/$basearch" rather than the "sles15-amd64" or "sles/15/x86_64" path that may exist currently. (MDBF-1067, MDEV-36945)

    • Fedora 42 is a new release version and x86_64 and aarch64 packages are available ()

    • Red Hat Enterprise Linux 10 packages are available for x86_64, aarch64, ppc64le, and s390x hardware platforms ()

    • Centos Stream 9 previously missed building a MariaDB-provider-lzo package and this has been corrected ()

    • This is the last release of the interim Ubuntu 24.10 which ended its standard support in July 2025 ()

    • Ubuntu 25.04 (Plucky Puffin) packages are available for amd64 and arm64 ()

    • Debian 13 (Trixie) packages are available for amd64, arm64, ppc64le and i386 ()

    Changelog

    For a complete list of changes made in MariaDB 12.0.1, with links to detailed information on each push, see the changelog.


    Download
    Release Notes
    Changelog
    Overview of 12.0
    Alternate download from mariadb.org
    Stable (GA)
    MariaDB 11.8
    rolling release
    MariaDB 12.0.2
    Download Now
    Alternate download from mariadb.org
    MDEV-36868
    MDEV-36330
    MDEV-37068
    MDEV-36234
    MDEV-37057
    MDEV-36840
    MDBF-1060
    MDBF-995
    MDBF-1038
    MDBF-1090
    MDBF-849
    MDBF-848

    Do not use non-stable (non-GA) releases in production!

    Be notified of new MariaDB Server releases automatically by subscribing to the MariaDB Foundation community announce 'at' lists.mariadb.org announcement list (this is a low traffic, announce-only list). MariaDB plc customers will be notified for all new releases, security issues and critical bug fixes for all MariaDB plc products thanks to the Notification Services.

    MariaDB may already be included in your favorite OS distribution. More information can be found on the page.

    Be notified of new MariaDB Server releases automatically by subscribing to the MariaDB Foundation community announce 'at' lists.mariadb.org announcement list (this is a low traffic, announce-only list). MariaDB plc customers will be notified for all new releases, security issues and critical bug fixes for all MariaDB plc products thanks to the Notification Services.

    MariaDB may already be included in your favorite OS distribution. More information can be found on the page.

    ssl_passphrase system
    SET SESSION AUTHORIZATION
    ROW
    max_open_cursors
    cursors
    TO_CHAR
    mariadb-check
    CHECK TABLE
    SEQUENCE tables
    Rowid Filtering
    Index Condition Pushdown
    optimizer hints
    QB_NAME
    NO_RANGE_OPTIMIZATION
    NO_ICP
    GIS
    ST_Validate
    MBRCoveredBy
    ST_Simplify
    ST_GeoHash
    skip-slave-start
    show_slave_auth_info
    SHOW REPLICA HOSTS
    replicate_same_server_id
    Audit Plugin
    --script-dir
    System Variables Added in MariaDB 12.0
    big_tables
    large_page_size
    storage_engine
    MRR, NO_MRR
    BKA, NO_BKA
    BNL, NO_BNL
    SEMIJOIN
    SUBQUERY
    MAX_EXECUTION_TIME
    ST_LatFromGeoHash
    ST_LongFromGeoHash
    ST_PointFromGeoHash
    ST_IsValid
    ST_Collect
    create_tmp_table_binlog_formats
    ST_Validate
    MBRCoveredBy
    ST_Simplify
    ST_GeoHash
    skip-slave-start
    ST_LatFromGeoHash
    ST_LongFromGeoHash
    ST_PointFromGeoHash
    ST_IsValid
    ST_Collect
    analyze_max_length
    Distributions which Include MariaDB
    Distributions which Include MariaDB

    This page is licensed: CC BY-SA / Gnu FDL

    This page is licensed: CC BY-SA / Gnu FDL

    This page is licensed: CC BY-SA / Gnu FDL