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 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122
|
connection node_2;
connection node_1;
connect node_1_ctrl, 127.0.0.1, root, , test, $NODE_MYPORT_1;
SET SESSION wsrep_sync_wait=0;
#
# Case 1: FTWRL
#
connection node_1;
SET SESSION wsrep_sync_wait=0;
FLUSH TABLES WITH READ LOCK;
SHOW STATUS LIKE 'wsrep_local_state_comment';
Variable_name Value
wsrep_local_state_comment Donor/Desynced
SET SESSION debug_sync = "wsrep_unlock_global_read_lock_after_resume_and_resync SIGNAL unlock_ready WAIT_FOR unlock_continue";
UNLOCK TABLES;
connection node_1_ctrl;
SET debug_sync = "now WAIT_FOR unlock_ready";
connect node_1_a, 127.0.0.1, root, , test, $NODE_MYPORT_1;
connection node_1_a;
SET SESSION debug_sync = "wsrep_global_read_lock_block_commit_after_pause SIGNAL lock_ready WAIT_FOR lock_continue";
FLUSH TABLES WITH READ LOCK;
connection node_1_ctrl;
SET debug_sync = "now WAIT_FOR lock_ready";
SET debug_sync = "now SIGNAL unlock_continue";
connection node_1;
connection node_1_ctrl;
SET debug_sync = "now SIGNAL lock_continue";
connection node_1_a;
UNLOCK TABLES;
CREATE TABLE t1 (f1 INT PRIMARY KEY) ENGINE=InnoDB;
DROP TABLE t1;
connection node_1_ctrl;
SET debug_sync = "RESET";
#
# Case 2: BACKUP STAGE
#
connection node_1;
SET SESSION wsrep_sync_wait=0;
BACKUP STAGE START;
BACKUP STAGE BLOCK_DDL;
SHOW STATUS LIKE 'wsrep_local_state_comment';
Variable_name Value
wsrep_local_state_comment Donor/Desynced
SET SESSION debug_sync = "wsrep_backup_stage_after_resume_and_resync SIGNAL resume_and_resync_ready WAIT_FOR resume_and_resync_continue";
BACKUP STAGE END;
connection node_1_ctrl;
SET debug_sync = "now WAIT_FOR resume_and_resync_ready";
connection node_1_a;
BACKUP STAGE START;
SET SESSION debug_sync = "wsrep_backup_stage_after_desync_and_pause SIGNAL desync_and_pause_ready WAIT_FOR desync_and_pause_continue";
BACKUP STAGE BLOCK_DDL;
connection node_1_ctrl;
SET debug_sync = "now WAIT_FOR desync_and_pause_ready";
SET debug_sync = "now SIGNAL resume_and_resync_continue";
connection node_1;
connection node_1_ctrl;
SET debug_sync = "now SIGNAL desync_and_pause_continue";
connection node_1_a;
BACKUP STAGE END;
CREATE TABLE t1 (f1 INT PRIMARY KEY) ENGINE=InnoDB;
DROP TABLE t1;
connection node_1_ctrl;
SET debug_sync = "RESET";
#
# Case 3: FTWRL first, BACKUP STAGE second
#
connection node_1;
SET SESSION wsrep_sync_wait=0;
SET SESSION wsrep_sync_wait=0;
FLUSH TABLES WITH READ LOCK;
SHOW STATUS LIKE 'wsrep_local_state_comment';
Variable_name Value
wsrep_local_state_comment Donor/Desynced
SET SESSION debug_sync = "wsrep_unlock_global_read_lock_after_resume_and_resync SIGNAL unlock_ready WAIT_FOR unlock_continue";
UNLOCK TABLES;
connection node_1_ctrl;
SET debug_sync = "now WAIT_FOR unlock_ready";
connection node_1_a;
BACKUP STAGE START;
SET SESSION debug_sync = "wsrep_backup_stage_after_desync_and_pause SIGNAL desync_and_pause_ready WAIT_FOR desync_and_pause_continue";
BACKUP STAGE BLOCK_DDL;
connection node_1_ctrl;
SET debug_sync = "now WAIT_FOR desync_and_pause_ready";
SET debug_sync = "now SIGNAL unlock_continue";
connection node_1;
connection node_1_ctrl;
SET debug_sync = "now SIGNAL desync_and_pause_continue";
connection node_1_a;
BACKUP STAGE END;
CREATE TABLE t1 (f1 INT PRIMARY KEY) ENGINE=InnoDB;
DROP TABLE t1;
connection node_1_ctrl;
SET debug_sync = "RESET";
#
# Case 4: BACKUP STAGE first, then FTWRL
#
connection node_1;
SET SESSION wsrep_sync_wait=0;
BACKUP STAGE START;
BACKUP STAGE BLOCK_DDL;
SHOW STATUS LIKE 'wsrep_local_state_comment';
Variable_name Value
wsrep_local_state_comment Donor/Desynced
SET SESSION debug_sync = "wsrep_backup_stage_after_resume_and_resync SIGNAL resume_and_resync_ready WAIT_FOR resume_and_resync_continue";
BACKUP STAGE END;
connection node_1_ctrl;
SET debug_sync = "now WAIT_FOR resume_and_resync_ready";
connection node_1_a;
SET SESSION debug_sync = "wsrep_global_read_lock_block_commit_after_pause SIGNAL lock_ready WAIT_FOR lock_continue";
FLUSH TABLES WITH READ LOCK;
connection node_1_ctrl;
SET debug_sync = "now WAIT_FOR lock_ready";
SET debug_sync = "now SIGNAL resume_and_resync_continue";
connection node_1;
connection node_1_ctrl;
SET debug_sync = "now SIGNAL lock_continue";
connection node_1_a;
UNLOCK TABLES;
CREATE TABLE t1 (f1 INT PRIMARY KEY) ENGINE=InnoDB;
DROP TABLE t1;
connection node_1_ctrl;
SET debug_sync = "RESET";
|