ReplicationProject
From Askmonty.org
Contents |
Replication Project
This is a project to design and implement improvements to MariaDB/MySQL replication. Initially started as a cooperation between Continuent, Codership, and Monty Program, but with the goal of involving the whole community.
The kick-off is this discussion on the maria-developers@ mailing list.
Associated worklog tasks
- mwl:107 "New replication APIs"
- Top-level task for the initial work of discussion ideas and defining more concretely what to implement.
- mwl:120 "Stacked replication event generators"
- Lowest level of the replication API. This is where event consumers can register themselves to receive events from the different generators available.
Formal project plan (Tekes)
This project is partially funded by the Finnish government agency Tekes. Related to this we need to do some reporting towards that agency. For this purpose there exists a more formal project plan at Replication_Project_plan
Links
Misc
- mailing list thread.
- An Early draft of the refactored replication API to be more modular and support plugins. This is used to implement semisynchroneous replication in MySQL, based on the Google patch.
- Replication slides from UC 2009 presenting new development in MySQL replication.
- Replication feature previews.
- Codership's wsrep: API for (a)synchronous writeset replication for transactional applications.
What users are missing from current replication
- Discussion of a poll among MySQL users, with top-5 requested features.
- Good blog from Domas Mituzas on the major limitations that replication users face today (main point: need transactional (== crash-safe) replication).
Group commit
Blog posts from FaceBook
- Even more on group commit
- Laying the foundatation for group commit
- InnoDB supports group commit, binlog does not
- Binlog appends are slow!
Mats Kindahl's blog
Kristian Nielsen's blog
Percona
MySQL bugs
MySQL worklogs
- WL#4925: Preallocating binary log for improving write performance
- WL#2492: group commit optimization for binlog" (obsolete
- WL#4832: Improve scalability of binary logging
- WL#4007: Improve binlog writing speed by using pwrite
MariaDB worklogs
Parallel SQL thread on the slaves
- Peter Zaitsev's thoughts on parallel replication
- Seppo's experiment with parallel replication showing no gain in one scenario
- Interesting (and long) thread discussing parallel replication for Drizzle
- Paul McCullagh writes with interesting thoughts in these messages.
- Kristian Nielsen's thoughts on how to do benchmarks to see performance gains
- MySQL worklog 4648, with design thoughts on multi-threaded slave for row-based replication
- MySQL preview ParallelSlave
- This executes a single master transaction at a time, in multiple slave transactions with two-phase commit.
- (I think this is mainly motivated by NDB replication, which batches multiple original master transactions into chunks called epochs, which are sent to the slave as one transaction)
Galera synchronous multi-master replication
- Codership home page.
- Good presentation of Galera with a number of details
- Launchpad project for the modified MySQL with hooks needed by Galera.
- Launchpad project for stand-alone wsrep API.
- Galera README.

