=== More Storage Engines
In addition to the standard MyISAM, Blackhole, CSV, Memory, and Archive storage
engines, the following are also included with MariaDB Source and Binary
packages:
* [[aria|Aria]]
* [[xtradb|XtraDB]] (drop-in replacement for InnoDB)
* [[pbxt|PBXT]] (In MariaDB 5.1, 5.2 and 5.3. Disabled in [[what-is-mariadb-55|5.5]])
* [[federatedx|FederatedX]] (drop-in replacement for Federated)
* [[oqgraph|OQGRAPH]]
<<style style="font-size:0.6em;color:green;">> //<<entity>>mdash<</entity>> new in 5.2//<</style>>
* [[sphinxse|SphinxSE]]
<<style style="font-size:0.6em;color:green;">> //<<entity>>mdash<</entity>> new in 5.2//<</style>>
* [[mroonga|mroonga]]
<<style style="font-size:0.6em;color:green;">> //<<entity>>mdash<</entity>> new in 5.3//<</style>>
* [[http://dev.mysql.com/doc/refman/5.1/en/se-db2.html|IBMDB2I]]. Oracle
removed this in MySQL 5.1.55 but we have kept the code in MariaDB.
=== Speed improvements
* A lot of optimizer enhancements in [[what-is-mariadb-53|MariaDB 5.3]]. Sub
queries are now finally usable! You can find a benchmark [[http://blog.montyprogram.com/mariadb-5-3-optimizer-benchmark|here]].
* Faster and safer replication:
[[group-commit-for-the-binary-log|Group commit for the binary log]]. This makes many setups that uses replication and lot's of updates [[http://www.facebook.com/note.php?note_id=10150211546215933|more than 2x times faster]].
* [[MariaDB 5.3 - Asynchronous I/O on Windows with InnoDB|Improvements]] for Innodb asynchronous IO subsystem on Windows.
* There are some improvements to DBUG code to make its execution faster when
debug is compiled in but not used.
* [[checksum-table|CHECKSUM TABLE]] is faster.
* 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.
* Our use of the Aria storage engine enables faster complex queries (queries
which normally use disk-based temporary tables). The [[aria|Aria]] storage
engine is used for internal temporary tables, which should give you a speedup
when doing complex selects. Aria is usually faster for temporary tables when
compared to MyISAM because Aria caches row data in memory and normally
doesn't have to write the temporary rows to disk.
* The test suite is extend and now runs much faster than before even though it
tests more things.
=== Extensions <<entity>>amp<</entity>> new features
We've added a lot of
[[what-is-in-the-different-mariadb-releases|new features to MariaDB]]. If a
patch or feature is useful, safe, and stable <<entity>>mdash<</entity>> we make
every effort to include it in MariaDB. The most notable features are:
* [[time_ms-column-in-information_schemaprocesslist|Microsecond Precision in Processlist]]
* [[pool-of-threads|Pool of Threads in MariaDB 5.1]] and even better in [[thread-pool-in-mariadb-55|MariaDB 5.5]]
* [[table-elimination|Table Elimination]]
* [[virtual-columns|Virtual Columns]]
<<style style="font-size:0.6em;color:green;">> //<<entity>>mdash<</entity>> new in 5.2//<</style>>
* [[user-statistics|Extended User Statistics]]
<<style style="font-size:0.6em;color:green;">> //<<entity>>mdash<</entity>> new in 5.2//<</style>>
* [[segmented-key-cache|Segmented Key Cache]]
<<style style="font-size:0.6em;color:green;">> //<<entity>>mdash<</entity>> new in 5.2//<</style>>
* [[pluggable-authentication|Pluggable Authentication]]
<<style style="font-size:0.6em;color:green;">> //<<entity>>mdash<</entity>> new in 5.2//<</style>>
* [[extending-create-table|Storage-engine-specific CREATE TABLE]]
<<style style="font-size:0.6em;color:green;">> //<<entity>>mdash<</entity>> new in 5.2//<</style>>
* [[information_schemaplugins-table|Enhancements to INFORMATION SCHEMA.PLUGINS table]]
<<style style="font-size:0.6em;color:green;">> //<<entity>>mdash<</entity>> new in 5.2//<</style>>
* [[group-commit-for-the-binary-log|Group commit for the binary log]]. This makes [[http://www.facebook.com/note.php?note_id=10150261692455933|replication notable faster!]]<<style style="font-size:0.6em;color:green;">> //<<entity>>mdash<</entity>> new in 5.3//<</style>>
* Added ##{{{--}}}rewrite-db## [[mysqlbinlog]] option to change the used database
<<style style="font-size:0.6em;color:green;">> //<<entity>>mdash<</entity>> new in 5.2//<</style>>
* [[progress-reporting|Progress reporting]] for ##[[alter-table|ALTER TABLE]]##
and ##[[load-data-infile|LOAD DATA INFILE]]##.
<<style style="font-size:0.6em;color:green;">> //<<entity>>mdash<</entity>> new in 5.3//<</style>>
* Faster [[http://kb.askmonty.org/en/what-is-mariadb-53#query-optimizer|joins and subqueries]]. <<style style="font-size:0.6em;color:green;">> //<<entity>>mdash<</entity>> new in 5.3//<</style>>
* [[handlersocket|HandlerSocket]] and faster [[HANDLER]] calls. <<style style="font-size:0.6em;color:green;">> //<<entity>>mdash<</entity>> new in 5.3//<</style>>
* [[dynamic-columns|Dynamic Columns]] support. <<style style="font-size:0.6em;color:green;">> //<<entity>>mdash<</entity>> new in 5.3//<</style>>
* [[microseconds-in-mariadb|Microseconds in MariaDB]] <<style style="font-size:0.6em;color:green;">> //<<entity>>mdash<</entity>> new in 5.3//<</style>>
For a full list, please see [[what-is-in-the-different-mariadb-releases|features for each release]]
=== Better Testing
* More tests in the test suite.
* Bugs in tests fixed.
* Test builds with different configure options to get better feature testing.
* Remove invalid tests. (e.g. Don't test feature ''X'' if that feature is not
in the build you are testing.)
=== Fewer warnings and bugs
* Bugs are bad. Fix as many bugs as possible and try to not introduce new ones.
* Compiler warnings are also bad. Eliminate as many compiler warnings as
possible.
=== Related links
See also [[mariadb-versus-mysql-compatibility | Compatiblity between MariaDB and MySQL]]