Changes & Improvements in MariaDB 10.2

MariaDB 10.2 is no longer maintained. Please use a more recent release.

The most recent release of MariaDB 10.2 is:MariaDB 10.2.44 Stable (GA) Download Now

MariaDB 10.2 is a previous major stable version. The first stable release was in May 2017.

For details on upgrading from MariaDB 10.1, see Upgrading from MariaDB 10.1 to 10.2.

The following lists the major new features in MariaDB 10.2:

Implemented Features

InnoDB as Default

Syntax / General Features

Incompatible Changes

  • TokuDB has been split into a separate package, mariadb-plugin-tokudb.

  • SQL_MODE has been changed; in particular, NOT NULL fields with no default will no longer fall back to a dummy value for inserts which do not specify a value for that field.

  • Replication from legacy MySQL servers may require setting binlog_checksum to NONE.

  • New reserved words: OVER, RECURSIVE, and ROWS.

Triggers

Replication / Binary Log

GeoJSON / JSON

Information Schema

EXPLAIN

  • EXPLAIN FORMAT=JSON now shows outer_ref_condition field which contains the condition that the(?) SELECT checks on each re-execution (MDEV-9652)

  • EXPLAIN FORMAT=JSON now shows sort_key field which shows the sort criteria used by filesort operation. (commit 2078392)

  • EXPLAIN used to show incorrect information about how the optimizer resolved ORDER BY clause or Distinct. This was a long-standing problem with roots back in MySQL. Now, after MDEV-8646 and related fixes, the problem doesn't exist anymore. (For test cases, see MDEV-7982, MDEV-8857, MDEV-7885, MDEV-326)

Optimizations

  • Connection setup was made faster by moving creation of THD to new thread (MDEV-6150)

  • Pushdown conditions into non-mergeable views/derived tables (MDEV-9197, condition-pushdown-into-derived-table-optimization ) — Original code from Galina Shalygina

  • ANALYZE TABLE has been re-implemented so as not to lock the entire table when collecting engine independent statistics (MDEV-7901)

  • Internal CRC32 routines use the optimized implementation on Power8 — MDEV-9872

  • Table cache can automatically partition itself as needed to reduce the contention (MDEV-10296)

Compatibility

  • 88 new NO PAD collations added. In NO PAD collations, end spaces are significant in comparisons (MDEV-9711) — Original code from Daniil Medvedev

  • MariaDB now works when started with a MySQL 5.7.6+ data directory (MDEV-11170)

CONNECT

System Variables

For a list of all new system variables, see System Variables Added in MariaDB 10.2. Variable changes include:

Status Variables

For a list of all new status variables, see Status Variables Added in MariaDB 10.2.

Scripts

Other Changes

  • Added support for OpenSSL 1.1 and LibreSSL (MDEV-10332)

  • Persistent AUTO_INCREMENT for InnoDB (MDEV-6076)

  • Support COM_RESET_CONNECTION (MDEV-10340)

  • "fast mutexes" have been removed. These aren't faster than normal mutexes, and have been disabled by default for years (MDEV-8111)

  • Old GPL client library is gone; now MariaDB Server comes with the LGPL Connector/C client library (MDEV-9055)

  • MariaDB is no longer compiled with jemalloc

  • TokuDB is now a separate package, not part of the server RPM (because TokuDB still needs jemalloc).

  • Upgrading to a new major release no longer requires setting innodb_fast_shutdown to 0. Omitting it can make the upgrade process a lot faster. (MDEV-12289)

Security Vulnerabilities Fixed in MariaDB 10.2

For a complete list of security vulnerabilities (CVEs) fixed across all versions of MariaDB, see the Security Vulnerabilities Fixed in MariaDB page.

Comparison with MySQL

List of All MariaDB 10.2 Releases

Date
Release
Status
Release Notes
Changelog

Date

Release

Status

Release Notes

Changelog

See Also

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 Distributions which Include MariaDB page.

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

Last updated

Was this helpful?