MySQL 5.4 comes with Innodb engine which seems to have much better performance than MySQL 5.0 – this is due to locking and IO patches from Google integrated in this release (which are similar to appropriate Percona patches) as well as some unique fixes such as different innodb_thread_concurrency handling and other optimization.
Should we take Innodb from MySQL 5.4 and merry it with unique Percona patches (adaptive checkpoints, additional undo slots, profiling, etc) and integrate it with MySQL 5.0 ? How useful would you find it ?
Currently we see a lot of customers not quite ready to update to MySQL 5.1 in particular as there is little in this version which benefits their workload, which consists of the queries running just fine on 5.0.
5.4 especially introduces optimizer changes which besides positive impact for some queries may break something which works well now.
In general I find the current situation with Innodb is quite strange – leaving apart Innodb derivatives, like XtraDB there are 3 innodb versions around. There is MySQL 5.0 version which did not get significant changes for around 2 years now. There is Innodb Plugin which has significant architectural changes such as new storage format, compression and fast index build. Innodb plugin 1.0.3 got some Google changes for CPU scalability but not IO patches. I expected Innodb to announce plugin is now stable at users conference and may be release the version with complete set of changes from google but instead we get MySQL 5.4 release with yet another set of Innodb changes. Why not to include plugin in MySQL 5.4 with relevant performance changes instead ? This would highlight it status as future Innodb code base.
Now I’m confused – if Innodb Plugin is not taking place of default Innodb in MySQL 5.4 will this ever going to happen ?
Looking at initial benchmarks I’m very impressed with Sun Performance Team work though it looks like there was not a lot of cooperation with Innodb team (otherwise I’d expect plugin to have same codebase). I also do not think development was done in true open source spirit – trading making a big marketing splash for true openness.
Where does this leave XtraDB ? The new MySQL 5.4 release is faster than XtraDB in some workloads and this is great. Competition makes the blood move and keep developer excited. We will look into the changes and adopt the best to XtraDB.