InnoDB Plugin Version 1.0.3 for MySQL 5.1.30/31/32 Released
March 11th, 2009The InnoDB Team is pleased to announce the availability of InnoDB Plugin release 1.0.3. This new early adopter version of the InnoDB Plugin introduces significant new performance-enhancing features, especially on multi-core servers:
- Enhanced scalability: the Google SMP enhancement for synchronization
- More efficient memory allocation: ability to use platform allocator tuned for multi-core systems
- Improved out-of-the-box scalability: unlimited concurrent thread execution by default
- Dynamic tuning: at run-time, enable or disable insert buffering and adaptive hash indexing
Note that because of MySQL Bug #42610, it is not possible to INSTALL InnoDB Plugin 1.0.3 into the binary release of MySQL 5.1.31 or 5.1.32 as distributed by Sun/MySQL. Instead, you must build from source. We anticipate that this situation will be resolved with MySQL version 5.1.33.
InnoDB Plugin 1.0.3 is now available in binary plug-in form (for 5.1.30 only) for 64-bit Red Hat Enterprise Linux (RHEL) for the first time as seen on our download page.
The above new performance features can yield up to twice the throughput or more, depending on your workload, platform and other tuning considerations. As one example, look at this chart showing the difference in scalability and performance between the built-in InnoDB and InnoDB Plugin 1.0.3:
More information about this performance result and other performance tests is presented here.
We gratefully acknowledge the contributions and suggestions made by Ben Handy and Mark Callaghan of Google, Inc. to improve the multi-core scalability of InnoDB, now incorporated in InnoDB Plugin 1.0.3. InnoDB now uses more the efficient GCC atomic built-in functions to implement mutexing and rw-locks. This happens automatically on platforms where the atomics are available. See SMP Performance Improvements and the InnoDB Plugin documentation for more details.
Also, the new configuration parameter innodb_use_sys_malloc allows you to use a memory allocator tuned for multi-core hardware. See Mark Callaghan’s blog for some details.
You can download source code and binaries for the InnoDB Plugin from here. This new release will work with MySQL releases 5.1.24 through 5.1.32 when built from source. Binaries have been compiled against MySQL 5.1.30 and can be plugged in dynamically only to that version.
Several bugs were fixed in this release, including those reported in the MySQL database, as well as those internally detected. This release also reflects all other changes made in MySQL through version 5.1.32. A full list of changes in 1.0.3 is available in the documentation and in the online ChangeLog.
Please report your comments and any problems or issues with the InnoDB Plugin in the InnoDB Forums or in the MySQL bug database.
Thank you, and enjoy!
