For the replication project that I am currently
working on in MariaDB, I wanted to understand exactly what
information is needed to do full replication of all MySQL/MariaDB
statements on the level of completeness that existing replication
does. So I went through the code, and this is what I found.
What I am after here is a complete list of what the execution
engine needs to provide to have everything that a replication
system needs to be able to completely replicate all changes made
on a master server. But not anything specific to the
particular implementation of replication used, like binlog
positions or replication event disk formats, etc.
The basic information needed is of course the query (for
statement-based replication), or the column values (for row-based
replication). But there are lots of extra details needed,
especially for statement-based …
[Read more]