1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64
|
# This test uses rpl_mts_spco_check_worker_states.inc to check different states of MTS worker threads
# E - Worker is executing the transaction and state will be 'Applying batch of row changes (write)' or 'update'
# R - Worker will get rolled back.
# W - Worker has executed but not committed and state will be 'Waiting for preceding transaction to commit'
--source include/master-slave.inc
--source include/rpl_connection_slave.inc
CALL mtr.add_suppression("You need to use --log-bin to make --binlog-format work");
CALL mtr.add_suppression(".*The replica coordinator and worker threads are stopped, possibly leaving data in inconsistent state.*");
CALL mtr.add_suppression("Replica SQL.*:.* Could not execute Write_rows event on table.*");
CALL mtr.add_suppression("Replica SQL.*:.*Duplicate entry '3' for key.*");
CALL mtr.add_suppression("Replica SQL.*:.*Replica worker has stopped after at least one previous worker encountered an error when replica-preserve-commit-order was enabled.*");
CALL mtr.add_suppression("Replica SQL .*Deadlock found when trying to get lock; try restarting transaction.*");
--echo # Check EEREE
--let $exec_trx2 = 1
--let $exec_trx4 = 1
--let $exec_trx5 = 1
--source extra/rpl_tests/rpl_mts_spco_check_worker_states.inc
--echo # Check EEREW
--let $exec_trx2 = 1
--let $exec_trx4 = 1
--let $exec_trx5 = 0
--source extra/rpl_tests/rpl_mts_spco_check_worker_states.inc
--echo # Check EERWE
--let $exec_trx2 = 1
--let $exec_trx4 = 0
--let $exec_trx5 = 1
--source extra/rpl_tests/rpl_mts_spco_check_worker_states.inc
--echo # Check EERWW
--let $exec_trx2 = 1
--let $exec_trx4 = 0
--let $exec_trx5 = 0
--source extra/rpl_tests/rpl_mts_spco_check_worker_states.inc
--echo # Check EWREE
--let $exec_trx2 = 0
--let $exec_trx4 = 1
--let $exec_trx5 = 1
--source extra/rpl_tests/rpl_mts_spco_check_worker_states.inc
--echo # Check EWREW
--let $exec_trx2 = 0
--let $exec_trx4 = 1
--let $exec_trx5 = 0
--source extra/rpl_tests/rpl_mts_spco_check_worker_states.inc
--echo # Check EWRWE
--let $exec_trx2 = 0
--let $exec_trx4 = 0
--let $exec_trx5 = 1
--source extra/rpl_tests/rpl_mts_spco_check_worker_states.inc
--echo # Check EWRWW
--let $exec_trx2 = 0
--let $exec_trx4 = 0
--let $exec_trx5 = 0
--source extra/rpl_tests/rpl_mts_spco_check_worker_states.inc
--source include/rpl_end.inc
|