mariadb/mysql-test/suite/galera
seppo 38839854b7 MDEV-19572 async slave node fails to apply MyISAM only writes (#1418)
The problem happens when MariaDB master replicates writes for only non InnoDB
tables (e.g. writes to MyISAM table(s)). Async slave node, in Galera cluster,
can apply these writes successfully, but it will, in the end, write gtid position in
mysql.gtid_slave_pos table. mysql.gtid_slave_pos table is InnoDB engine, and
this write makes innodb handlerton part of the replicated "transaction".
Note that wsrep patch identifies that write to gtid_slave_pos should not be replicated
and skips appending wsrep keys for these writes. However, as InnoDB was present
in the transaction, and there are replication events (for MyISAM table) in transaction
cache, but there are no appended keys, wsrep raises an error, and this makes the söave
thread to stop.

The fix is simply to not treat it as an error if async slave tries to replicate a write
set with binlog events, but no keys. We just skip wsrep replication and return successfully.

This commit contains also a mtr test which forces mysql.gtid_slave_pos table isto be
of InnoDB engine, and executes MyISAM only write through asyn replication.

There is additional fix for declaring IO and background slave threads as non wsrep.
These threads should not write anything for wsrep replication, and this is just a safeguard
to make sure nothing leaks into cluster from these slave threads.
2019-11-26 08:49:50 +02:00
..
include MDEV-18426: Most of the mtr tests in the galera_3nodes suite fail 2019-02-12 09:38:13 +02:00
r MDEV-19572 async slave node fails to apply MyISAM only writes (#1418) 2019-11-26 08:49:50 +02:00
t MDEV-19572 async slave node fails to apply MyISAM only writes (#1418) 2019-11-26 08:49:50 +02:00
disabled.def Enable galera_sst_mysqldump_with_key test case. 2019-08-27 08:30:26 +03:00
galera_2nodes.cnf Merge remote-tracking branch 'origin/10.0-galera' into 10.1 2017-08-21 13:35:00 +03:00
galera_2nodes_as_master.cnf Merge remote-tracking branch 'origin/10.0-galera' into 10.1 2017-08-21 13:35:00 +03:00
galera_2nodes_as_slave.cnf Merge remote-tracking branch 'origin/10.0-galera' into 10.1 2017-08-21 13:35:00 +03:00
galera_3nodes_as_slave.cnf MW-86 Adjust MTR tests for changes to wsrep_sync_wait 2017-08-14 11:42:13 +03:00
galera_4nodes.cnf Merge remote-tracking branch 'origin/10.0-galera' into 10.1 2017-08-21 13:35:00 +03:00
my.cnf cleanup: remove galera/wsrep magic from mtr 2014-10-01 23:38:27 +02:00
suite.pm Test cleanups. 2019-03-12 14:36:37 +02:00