Fix buildbot failure in rpl_stop_slave.test.

Problem was setting DEBUG_SYNC twice in a row too fast in the test case; this
could cause the second setting to override the first before the code had time
to react to the first, causing the signal to get lost.

Fixed by waiting for the code to receive the first signal before overwriting
it in the test case.
This commit is contained in:
unknown 2011-05-09 15:06:16 +02:00
parent 6b8788e425
commit e2ff288531
3 changed files with 7 additions and 0 deletions

View File

@ -168,6 +168,7 @@ STOP SLAVE;
ROLLBACK; ROLLBACK;
[connection master] [connection master]
SET DEBUG_SYNC= 'now SIGNAL signal.continue'; SET DEBUG_SYNC= 'now SIGNAL signal.continue';
SET DEBUG_SYNC= 'now WAIT_FOR signal.continued';
SET DEBUG_SYNC= 'RESET'; SET DEBUG_SYNC= 'RESET';
[connection slave] [connection slave]
include/wait_for_slave_to_stop.inc include/wait_for_slave_to_stop.inc

View File

@ -109,6 +109,7 @@ ROLLBACK;
--source include/rpl_connection_master.inc --source include/rpl_connection_master.inc
SET DEBUG_SYNC= 'now SIGNAL signal.continue'; SET DEBUG_SYNC= 'now SIGNAL signal.continue';
SET DEBUG_SYNC= 'now WAIT_FOR signal.continued';
SET DEBUG_SYNC= 'RESET'; SET DEBUG_SYNC= 'RESET';
--source include/rpl_connection_slave.inc --source include/rpl_connection_slave.inc

View File

@ -571,6 +571,11 @@ impossible position";
DBUG_ASSERT(opt_debug_sync_timeout > 0); DBUG_ASSERT(opt_debug_sync_timeout > 0);
DBUG_ASSERT(!debug_sync_set_action(current_thd, DBUG_ASSERT(!debug_sync_set_action(current_thd,
STRING_WITH_LEN(act))); STRING_WITH_LEN(act)));
const char act2[]=
"now "
"signal signal.continued";
DBUG_ASSERT(!debug_sync_set_action(current_thd,
STRING_WITH_LEN(act2)));
} }
}); });