Details
Description
multi_source.status_vars w4 [ fail ]
Test ended at 2013-06-08 15:11:45
CURRENT_TEST: multi_source.status_vars
mysqltest: In included file "./include/wait_for_status_var.inc":
included from /usr/share/mysql/mysql-test/suite/multi_source/status_vars.test at line 92:
At line 88:
The result from queries just before the failure was:
< snip >
set default_master_connection = 'master1';
show status like 'Slave_received_heartbeats';
Variable_name Value
Slave_received_heartbeats 0
stop slave;
include/wait_for_slave_to_stop.inc
change master to master_heartbeat_period=2;
start slave;
include/wait_for_slave_to_start.inc
**** ERROR: failed while waiting for '' 'Slave_received_heartbeats' = '1' ****
Note: the following output may have changed since the failure was detected
**** Showing STATUS, PROCESSLIST ****
SHOW STATUS LIKE 'Slave_received_heartbeats';
Variable_name Value
Slave_received_heartbeats 3
SHOW PROCESSLIST;
Id User Host db Command Time State Info Progress
39 root localhost:41582 test Query 0 NULL SHOW PROCESSLIST 0.000
46 system user NULL Connect 8 Waiting for master to send event NULL 0.000
47 system user NULL Connect 8 Slave has read all relay log; waiting for the slave I/O thread to update it NULL 0.000
More results from queries before failure can be found in /run/shm/var/4/log/status_vars.log
- saving '/run/shm/var/4/log/multi_source.status_vars/' to '/run/shm/var/log/multi_source.status_vars/'
Gliffy Diagrams
Attachments
Activity
- All
- Comments
- Work Log
- History
- Activity
- Transitions
The reason of the failure is clear. For example here (and probably in some other places):
If the test is slow enough, it can happen that more than 2 heartbeats happened by the time we started waiting for value '2', so the waiting fails.
One way to fix it would be, for example, to wait for >= 2, but it needs to be done carefully, because other values should be adjusted.