On Fri, Apr 23, 2010 at 2:35 AM, Kristian Nielsen <knielsen@knielsen-hq.org> wrote:
MARK CALLAGHAN <mdcallag@gmail.com> writes:
This is a really long thread so a summary elsewhere would be great for people like me.
I agree that the discussion has become quite long. I summarised the group commit part of it on my blog:
http://kristiannielsen.livejournal.com/12254.html http://kristiannielsen.livejournal.com/12408.html http://kristiannielsen.livejournal.com/12553.html
Hopefully I sent a few more people to your posts -- http://www.facebook.com/MySQLatFacebook Someone even asked about about MariaDB
I think the point here is that the locks must not be released until the order in the binlog has been determined, right? So that any transaction order enforced by the log will be the same on the slave. So the callback might be called before or after the actual write of the binlog, but only after (not before) determining the order of such write?
I think this could be handled by the xa_prepare_fast() and/or the commit_fast() callbacks that I propose in the third article referenced above.
I think it can. For us, row lock release order determines the order in which the binlog is written. You are trying to fix this the right way. We must make compromises to get this running soon in production.
BTW, it was great to discuss these issues with you at the MySQL Conference!
I enjoyed that too. I hope to read more about the changes that MariaDB will do for replication and especially the new replication projects done by the Galera and Tungsten teams. -- Mark Callaghan mdcallag@gmail.com