mariadb/mysql-test/suite/multi_source
unknown 2c2478b822 MDEV-5804: If same GTID is received on multiple master connections in multi-source replication, the event is double-executed causing corruption or replication failure
Before, the arrival of same GTID twice in multi-source replication
would cause double-apply or in gtid strict mode an error.

Keep the behaviour, but add an option --gtid-ignore-duplicates which
allows to correctly handle duplicates, ignoring all but the first.
This relies on the user ensuring correct configuration so that
sequence numbers are strictly increasing within each replication
domain; then duplicates can be detected simply by comparing the
sequence numbers against what is already applied.

Only one master connection (but possibly multiple parallel worker
threads within that connection) is allowed to apply events within
one replication domain at a time; any other connection that
receives a GTID in the same domain either discards it (if it is
already applied) or waits for the other connection to not have
any events to apply.

Intermediate patch, as proof-of-concept for testing. The main limitation
is that currently it is only implemented for parallel replication,
@@slave_parallel_threads > 0.
2014-03-09 10:27:38 +01:00
..
gtid.cnf
gtid.result 10.0-base merge 2013-12-16 13:02:21 +01:00
gtid.test
gtid_ignore_duplicates.cnf MDEV-5804: If same GTID is received on multiple master connections in multi-source replication, the event is double-executed causing corruption or replication failure 2014-03-09 10:27:38 +01:00
gtid_ignore_duplicates.result MDEV-5804: If same GTID is received on multiple master connections in multi-source replication, the event is double-executed causing corruption or replication failure 2014-03-09 10:27:38 +01:00
gtid_ignore_duplicates.test MDEV-5804: If same GTID is received on multiple master connections in multi-source replication, the event is double-executed causing corruption or replication failure 2014-03-09 10:27:38 +01:00
info_logs-master.opt MDEV-5277 - Ensure that all MySQL 5.6 options are supported by the 2013-11-25 18:49:40 +04:00
info_logs.result 10.0-base merge 2013-12-16 13:02:21 +01:00
info_logs.test
load_data.result
load_data.test
multisource.result 10.0-base merge 2013-12-16 13:02:21 +01:00
multisource.test
my.cnf
relaylog_events.result
relaylog_events.test
reset_master_slave.inc
reset_slave.result 10.0-base merge 2013-12-16 13:02:21 +01:00
reset_slave.test
simple.result 10.0-base merge 2013-12-16 13:02:21 +01:00
simple.test
skip_counter.result Fixed test case as gtid events are not counted anymore 2014-02-11 18:45:49 +02:00
skip_counter.test Fixed test case as gtid events are not counted anymore 2014-02-11 18:45:49 +02:00
status_vars.result
status_vars.test
syntax.result 10.0-base merge 2013-12-16 13:02:21 +01:00
syntax.test
wait_for_sql_thread_read_all.inc