Buy Percona ServicesBuy Now!

Group commit and XA

 | May 19, 2006 |  Posted In: Insight for DBAs


Returning to post Group commit and real fsync I made several experiments:

I ran sysbench update_key benchmarks without —log-bin, with —log-bin, and with —log-bin and —innodb-support-xa=0 (default value is 1). Results (in transactions / sec)

threads without —log-bin —log-bin —log-bin and
1 1218.68 614.94 1010.44
4 2686.36 667.77 1162.60
16 3993.59 666.14 1161.56
64 3630.55 665.18 1151.36

So we can see group commit is not only broken when XA is enabled but also if XA is disabled but binary log is enabled. Performance without XA can be twice as good as with XA if binary logs are enabled as Innodb will need to flush its log buffer only once. So, if you are using —log-bin with innodb tables it makes sense to set —innodb-support-xa=0

Vadim Tkachenko

Vadim Tkachenko co-founded Percona in 2006 and serves as its Chief Technology Officer. Vadim leads Percona Labs, which focuses on technology research and performance evaluations of Percona’s and third-party products. Percona Labs designs no-gimmick tests of hardware, filesystems, storage engines, and databases that surpass the standard performance and functionality scenario benchmarks. Vadim’s expertise in LAMP performance and multi-threaded programming help optimize MySQL and InnoDB internals to take full advantage of modern hardware. Oracle Corporation and its predecessors have incorporated Vadim’s source code patches into the mainstream MySQL and InnoDB products. He also co-authored the book High Performance MySQL: Optimization, Backups, and Replication 3rd Edition.


Comments are closed