This is a read-only copy of the MariaDB Knowledgebase generated on 2024-11-14. For the latest, interactive version please visit https://mariadb.com/kb/.

MariaDB 5.1.38 Release Notes

The most recent release in the MariaDB 5.1 series is: MariaDB 5.1.67

Download | Release Notes | Changelog | Overview of 5.1

Release date: 29 Oct 2009

See the MariaDB versus MySQL page for a high-level overview of the differences between MariaDB and MySQL.

MariaDB 5.1.38 Beta is based on MySQL 5.1.38 and XtraDB 1.0.3-6.

MariaDB will be kept up to date with the latest MySQL release from the same branch.

In most respects MariaDB will work exactly as MySQL; all commands, interfaces, libraries and APIs that exist in MySQL also exist in MariaDB.

For 5.1.38, the main differences between MariaDB and MySQL are:

Maria storage engine is included

The Maria storage engine version 1.5 (the crash-safe version) is included in the source and binaries by default.

If you use the source, you can of course easily disable the Maria storage engine when configuring MariaDB.

The new Maria storage engine specific options can be found here: Maria storage engine.

XtraDB storage engine is included

Percona XtraDB replaces InnoDB in the MariaDB 5.1 tree.

XtraDB is a drop in replacement of InnoDB (same table formats, no need to convert any data).

XtraDB gives you similar performance improvements for multi-cpu systems in MariaDB 5.1 that you can expect from using InnoDB in MySQL 5.4.

See also XtraDB storage engine

PBXT storage engine is included

The PBXT storage engine version 1.0.08d is included in the source and binaries by default.

See also: PBXT storage engine

Faster complex queries

Our use of the Maria storage engine enables faster complex queries (queries which normally use disk-based temporary tables).

The Maria storage engine is used for internal temporary tables, which should give you a speedup when doing complex selects. Maria is usually faster for temporary tables when compared to MyISAM because Maria caches row data in memory and normally doesn't have to write the temporary rows to disk.

Pool of Threads

Limited sets of threads handling all queries.

See: Pool of Threads

Fewer warnings and bugs

  • Fewer warnings when compiling. We believe that compiler warnings can indicate bugs, and strive toward reduction to 0.
  • Fewer bugs. If we see a bug while fixing a warning or cleaning up code, we'll fix it when possible.

Speed improvements

  • There are some improvements to DBUG code to make its execution faster when debug is compiled in but not used.
  • CHECKSUM TABLE now ignores values in NULL fields. This makes CHECKSUM TABLE faster and fixes some cases where the same table definition could give different checksum values depending on row format. The disadvantage is the value is now different compared to other MySQL installations. The new checksum calculation is fixed for all table engines which use the default way to calculate and MyISAM which does the calculation internally. Note: Old MyISAM tables with internal checksum will return the same checksum as before. To fix them to calculate according to new rules you have to do an ALTER TABLE. You can use the old ways to calculate checksums by using the option --old to mysqld or set the system variable '@@old' to 1 when you do CHECKSUM TABLE ... EXTENDED;
  • We have eliminated/improved some not needed character set conversions. Overall speed improvements is 1-5 % (according to sql-bench) but can be higher for big results sets with all characters between 0x00-0x7f.

Extensions

  • MariaDB can handle up to 32 key segments per key (up from 16)
  • Added a new handler function: prepare_index_scan() that is called before a key scan is done.
  • Added --abort-source-on-error to the mysql client.

Better testing of features

  • Wrong mutex usage detector. This helps us find and fix deadlocks when taking mutex in inconsistent orders. In MariaDB we have removed several deadlocks which exist in the normal MySQL code.

Table elimination

Implementation of MWL#17: Table elimination

See Table_Elimination for details.

Slow Query Log Extended Statistics

This is based on the microslow patch from Percona.

See Slow Query Log Extended Statistics for details.

Microsecond Precision in Processlist

This is based on the microsec_process patch from Percona.

See TIME_MS column in INFORMATION_SCHEMA.PROCESSLIST for details.

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.