Where the open source database community meets: Use code PERCONA75 and secure your spot for Percona Live.  Register

Announcing Percona XtraDB Storage Engine: a Drop-in Replacement for Standard InnoDB

December 17, 2008
Author
Vadim Tkachenko
Share this Post:

Today we officially announce our new storage engine, “Percona XtraDB“, which is based on the InnoDB storage engine. It’s 100% backwards-compatible with standard InnoDB, so you can use it as a drop-in replacement in your current environment. It is designed to scale better on modern hardware, and includes a variety of other features useful in high performance environments.

Percona XtraDB includes all of InnoDB’s ACID-compliant design and advanced MVCC architecture, and adds features, more tunability, more metrics, more scalability on many cores, and better memory usage. We choose features and fixes based on customer requests and on our best judgment of real-world needs. We have not included all the InnoDB patches available. For example Google’s well-known InnoDB patch set is omitted (at least for now).

The first version of our new storage engine is 1.0.2-1, which is forked from InnoDB-plugin-1.0.2. Percona XtraDB is released under GPL v2, as is InnoDB-plugin base source code. Percona XtraDB is released only under the GPL v2 with no dual-licensing, and commercial support is available from Percona.

So what’s new in the engine? Here is a list of new features and enhancements:

  • INFORMATION_SCHEMA.XTRADB_ENHANCEMENTS. This table contains information about the differences between the Percona XtraDB and the same version number of standard InnoDB, so you can always learn what your engine can do. documentation
  • Improvements to SHOW INNODB STATUS. We’ve added more memory information and lock information, and fixed problems with lock information. documentation
  • Improvements to InnoDB IO. Improvements of InnoDB IO subsystem, such as multiple read and write threads, read-ahead control, control io capacity and adaptive checkpointing. documentation
  • InnoDB RW-lock fixes Improvements to scalability for systems with 8+ cores. documentation
  • Buffer pool fixes Improvements of buffer_pool scalability. documentation
  • innodb_buffer_pool_pages Information about content of buffer_pool pages. documentation

Documentation is on https://www.percona.com/docs/wiki/percona-xtradb:start.

Percona XtraDB available :
* in source code from Launchpad https://launchpad.net/percona-xtradb, the version 1.0.2-1 you can get as

* as source code in tar.gz https://www.percona.com/mysql/5.1.30/source/percona-xtradb-1.0.2-1.tar.gz
* as binaries, percona xtradb is compiled in into MySQL-5.1.30 RPMS
* as separated shared library, to use as drop-in plugin for existing MySQL-5.1.30 installation https://www.percona.com/mysql/5.1.30/binary/percona-xtradb-1.0.2-1-5.1.30.x86_64.tar.gz
* OurDelta will also be using Percona XtraDB for its upcoming 5.1 builds.

XtraDB is fully compatible with existing InnoDB tables and we are going to keep compatibility in further releases.

We are open for features requests for new engine and ready to accept community patches. You can monitor Percona’s current tasks and further plans on https://bugs.launchpad.net/percona-xtradb. You can also report bugs there. Also have setup two maillists http://groups.google.com/group/percona-discussion for General discussions and http://groups.google.com/group/percona-dev for development related questions.

We are looking for 6-month release cycle of XtraDB. First several releases may come faster, as many features are planned.

Why do we say it’s a new storage engine, and not just a patchset? Because we are taking this as a serious project to evolve a new storage engine that will eventually become much more than just small variations from standard InnoDB. Percona will improve this storage engine using our own ideas, as well as incorporate improvements specifically sponsored by customers. Please contact us if you would like to sponsor any specific features. Contact form: https://www.percona.com/contacts.html

0 0 votes
Article Rating
Subscribe
Notify of
guest

25 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
Wilfried Schobeiri
Wilfried Schobeiri
17 years ago

Got any benchmarks for performance against InnoDB

Carsten Pedersen
17 years ago

Now, *this* should be interesting… If you guys can pull this off as promised, it’s certainly something I’ll follow with a lot of interest.

Kevin Burton
17 years ago

Nice. It’s like InnoDB only Open Source 🙂

Hopefully, Oracle will follow your lead.

Having a public source repository is a huge plus.

Seriously though, a wiki AND bug tracking?

I’d really like to see InnoDB do this…

Any chance we’d ever see this back ported to 5.0.x? 5.1 scares the heck out of me 🙂

Edouard LAURENT
Edouard LAURENT
17 years ago

Vadim,

is it plan to do entreprise support for this plugin ?

thx
Edouard

Baron Schwartz
17 years ago

Edouard, please explain what you mean by enterprise support. What exactly are you looking for?

Dathan Pattishall
17 years ago

Does this build support Zlib compression, i.e.
innodb_file_format=Barracuda

Dathan Pattishall
17 years ago

Will ibbackup work on this build? btw openid is not working.

Venu Anuganti
17 years ago

Vadim, Peter, Baron

This is indeed a good news; even though yet another fork. But you guys should get decent bug tracking along with nice benchmarks, articles and documentation which explains the enhancements will be a good plus.

Dathan Pattishall
17 years ago

Good, figured this was the case. Thanks Vadim. For my use case

I’ve introduced a new use of a Shard, called the archive shard. For data that is not looked at or queried the data goes to the archive shards. If the data requested is on the archive shard, the data is moved from the archive shard to the live shards and archiving for that federated user is turned off.

Why do this?

Archive Shards can run non-production quality builds (5.1)
Archive Shards are cheaper boxes that use RAID-5, less memory, less CPU i.e. 1.5K box vrs 3K box
Migration is done based on the Federated Model, so getting the data and putting it on the live shards can be done in less than a second.
The specification of the app requires keeping ALL data, but “dead” data on fast equipment costs too much.

http://jeremy.zawodny.com/blog/

Excellent! Glad to see this, guys.

A new toy to play with. 🙂

Edouard
Edouard
17 years ago

Baron,

There is a lot of nice features in this plugin I would like to test and may be use in my production servers, but if I do not have support and warranty, I cannot use it.
I already have Mysql Gold Support, but is it enough to get support & warranty if I use this plugin ?
If not, do you plan to do some support on this plugin with paid subscription if needed ?

Edouard

Baron Schwartz
17 years ago

Edouard, I see. We don’t honor contracts with MySQL, because we’re a separate company. But yes, we do offer paid support contracts through Percona. Please contact us via https://www.percona.com/contacts.html if you’re interested in that.

Steven Roussey
Steven Roussey
17 years ago

Sounds interesting. Would be great to see standardized benchmarks on Amazon EC2.. I know MyISAM often does much better simply because EBS volumes are constrained by the ethernet interface, and MyISAM tables are much smaller.

Log Buffer
17 years ago

“Speaking of which, the MySQL Performance Blog announced the Percona XtraDB Storage Engine: a drop-in replacement for standard InnoDB.”

Log Buffer #128

Brad Fino
17 years ago

Any chance of a native backup engine for Percona/XtraDB ( I realize there’s one slated for mysql 6.0, but … eh 🙂 ) In talking to innodb it doesn’t sound like there’s going to be an ibbackup release for the innodb plugin anytime soon, which is just about the only thing stopping me from throwing this into production.

Michael Myles
17 years ago

Are there any plans for a Windows version. I’m running Server 2008 x64 and it would be really nice to have the xtra features.

Michael Myles
17 years ago

I suppose I should contact you to eval the commercial details. I know I’m not the only person that wants this, but I also understand it’s a big project. Is there any way that you can initiate contact with me via email please? By the way, this site has done more for my business than any other singular site. Without the performance knowledge I have gained on this site I would have had 3 or four times the number of servers. Thanks for that!

Baron Schwartz
17 years ago

Hi Michael! Please submit https://www.percona.com/contacts.html and mention this blog post and Vadim’s name. Thanks! Baron

Far
Enough.

Said no pioneer ever.
MySQL, PostgreSQL, InnoDB, MariaDB, MongoDB and Kubernetes are trademarks for their respective owners.
© 2026 Percona All Rights Reserved