Bug #49326 Support group commit for the binlog
| Submitted: | 2 Dec 2009 5:22 | Modified: | 4 Jul 2012 14:49 |
|---|---|---|---|
| Reporter: | Mark Callaghan | Email Updates: | |
| Status: | Closed | Impact on me: | |
| Category: | MySQL Server: Replication | Severity: | S4 (Feature request) |
| Version: | 5.0,5.1 | OS: | Any |
| Assigned to: | Alfranio Tavares Correia Junior | CPU Architecture: | Any |
| Tags: | binlog, group.commit | ||
[2 Dec 2009 5:22]
Mark Callaghan
[3 Dec 2009 8:15]
Mats Kindahl
Mark, Please have a look at WL#4007 and WL#4832. WL#4832 does some internal refactoring to improve the speed of binary logging, but is a pre-requisite for WL#4007. WL#4007 require all the events to be stored in the transaction cache to be possible to implement efficiently. Once WL#4007 is implemented, the binlog have a form of "group commit". We already have a patch for WL#4832 but to truly work well even for DDL, it require meta-data locking (WL#4284) since DDL operations are synchronized using LOCK_open, so it was put on hold awaiting MDL to be pushed.
[3 Dec 2009 18:24]
Harrison Fisk
Both of these worklogs are available publicly as well at: http://forge.mysql.com/worklog/task.php?id=4007 http://forge.mysql.com/worklog/task.php?id=4832
[28 Feb 2010 20:58]
Mark Callaghan
I want to expand this request to include changes to storage engines to benefit from this change: 1) InnoDB locks prepare_commit_mutex during the prepare phase, until that is removed there will be not concurrent transactions when binlog writes/syncs are done 2) InnoDB does not release row locks until the commit phase. Two fsyncs are done prior to that: one in the prepare phase, one for the binlog. Workloads with dependent transactions won't benefit much from this change unless InnoDB row locks are release earlier
[4 Jul 2012 14:49]
Jon Stephens
Fixed in 5.6.6. To be documented with WL#5223, Closed.
Portions of this website are copyright © 2001, 2002 The PHP Group
Page generated in 0.058 sec. using MySQL 8.4.7-u6-cloud
Timestamp references displayed by the system are UTC.
Content reproduced on this site is the property of the
respective copyright holders.
It is not reviewed in advance
by Oracle and does not necessarily represent the opinion of
Oracle or any other party.