May 19, 2006

Group commit and XA

Posted by Vadim

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
—innodb_support-xa=0
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

Related posts: :Group commit and real fsync::Jeremy Cole on MySQL Replication::MySQL should have dynamic durability settings:
 

6 Comments »

  1. [...] Watch out for MySQL 5.0 -  if you enabled Binary log with MySQL 5.0 you loose group commit which can dramatically increase commit rate for multiple user load.  See this post by Vadim for benchmark results. [...]

    Pingback :: May 27, 2006 @ 8:18 am

  2. [...] problem in both cases was MySQL 5.0 broken group commit [...]

    Pingback :: June 6, 2007 @ 5:13 am

  3. 3. mfc

    Hi,

    What version of 4.1 did group commit first show up in?

    Thanks,

    Mike

    Comment :: June 10, 2007 @ 8:25 am

  4. Hello,
    Please, what means “XA” ?
    I cannot find the meaning on the web.

    Regards
    Jonatas

    Comment :: September 13, 2007 @ 6:02 am

  5. 5. Vadim

    Jonatas,

    http://en.wikipedia.org/wiki/X/Open_XA

    Comment :: September 13, 2007 @ 8:34 am

  6. [...] PZ: You can disable binary logging to get Group Commit back. Though this is often not the option. Here are some benchmarks we did. [...]

    Pingback :: November 4, 2007 @ 11:30 am

 



Subscribe without commenting


This page was found by: mysql commit mysql group commit