Change expected result of mysqlmon_rejoin_bad2

Instead of the current master rejoining to the diverged master, the
current master should remain as the master server. This behavior should be
explained by the extra GTID event injected by the failover process.
This commit is contained in:
Markus Mäkelä
2018-02-13 01:10:23 +02:00
parent 45ad6f943f
commit 2e920af845

View File

@ -129,9 +129,9 @@ int main(int argc, char** argv)
return test.global_result; return test.global_result;
} }
// Manually set current master to replicate from the old master to quickly fix the cluster. // Set current master to replicate from the old master. The old master should remain as the current master.
cout << "Setting server " << master_id_new << " to replicate from server 1. Auto-rejoin should redirect " cout << "Setting server " << master_id_new << " to replicate from server 1. Server " << master_id_new
"servers so that in the end server 1 is master and all others are slaves." << endl; << " should remain as the master because server 1 doesn't have the latest event it has." << endl;
const char CHANGE_CMD_FMT[] = "CHANGE MASTER TO MASTER_HOST = '%s', MASTER_PORT = %d, " const char CHANGE_CMD_FMT[] = "CHANGE MASTER TO MASTER_HOST = '%s', MASTER_PORT = %d, "
"MASTER_USE_GTID = current_pos, MASTER_USER='repl', MASTER_PASSWORD = 'repl';"; "MASTER_USE_GTID = current_pos, MASTER_USER='repl', MASTER_PASSWORD = 'repl';";
char cmd[256]; char cmd[256];
@ -143,9 +143,10 @@ int main(int argc, char** argv)
sleep(5); sleep(5);
get_output(test); get_output(test);
expect(test, "server1", "Master", "Running"); expect(test, "server1", "Running");
expect(test, "server2", "Slave", "Running"); expect(test, "server2", "Master", "Running");
expect(test, "server3", "Slave", "Running"); expect(test, "server3", "Slave", "Running");
expect(test, "server4", "Slave", "Running"); expect(test, "server4", "Slave", "Running");
test.repl->fix_replication();
return test.global_result; return test.global_result;
} }