• Luis Soares's avatar
    BUG#59147: rpl_circular_for_4_hosts fails sporadically · cb10771f
    Luis Soares authored
          
    There is one part of the test case that needs to break
    and re-establish the circular topology. For this the test
    stops the slave threads on a couple of servers and restarts
    them with START SLAVE. However, no check is done on the
    status of the IO or SQL threads before proceeding with
    the subsequent commands.
          
    Because rpl_only_running_threads is set to 1 this can lead
    to silently not syncing all slave threads as expected, 
    ultimately resulting in unexpected results (and consequently
    on a failing test run).
          
    We fix this by replacing the START SLAVE instructions with
    calls to --source include/start_slave.inc, which will wait
    for the slave threads to be running (show 'Yes' in 
    Slave_IO|SQL_Running fields of SHOW SLAVE STATUS) before 
    proceeding. Additionally, we change rpl_sync.inc to make the
    IO thread report that it is running when its running status
    is any other than 'No'.
    cb10771f
rpl_sync.inc 4.63 KB