← Back to team overview

maria-developers team mailing list archive

Re: Thoughts on Global Transaction ID, parallel slave, and multi-source replication


Sergei Golubchik <serg@xxxxxxxxxxxx> writes:
> On Aug 10, Stewart Smith wrote:
>> > Suppose we instead make the decision on the _master_ on how to split
>> > up the replication stream for parallel apply. Instead of a single
>> > server-id for the master, we can have multiple - let us call them
>> > "Source ID".
>> >
>> > On the _master_, we will decide that two transactions in different
>> > databases are independent, and assign them different Source ID.
>> How would this work with a cross database transaction that depends on
>> previous transactions in both database?
> Same as in MySQL - it won't, so don't use per-database splitting in this
> case. You've missed the point, the main idea is about *where* to split
> the replication stream on parallel "independent" source streams. But
> *how* to split - is a separate question. There are many different
> approaches, per-database is just one of those.

Idea: if txn touches more than one database, record as metadata the
position of other db, so slave just has to wait for at least that id to
be applied in other database before applying this txn in this
source. This seems like a relatively simple solution to the problem
(unless i've missed something).

Stewart Smith

Attachment: pgpxxfHFqIODr.pgp
Description: PGP signature