Description:
The check of testcase rpl.rpl_killed_ddl is failing for all binlog formats in the azalea tree:
Below is the output most commonly seen, but it should be noted that I did see one incident with 'mixed' format where there was also a +v2 in the failure output.
This was observed on a Mac OSX 10.5 machine, but it is assumed that this isn't platform-specific behavior.
It seems like this failure indicates an actual problem as there are explicit DROP VIEW statements for these 'leftover' views.
MTR's internal check of the test case 'rpl.rpl_killed_ddl' failed.
This means that the test case does not preserve the state that existed
before the test case was executed. Most likely the test case did not
do a proper clean-up.
This is the diff of the states of the servers before and after the
test case was executed:
<snip>
@@ -274,6 +274,7 @@
def mysql latin1 latin1_swedish_ci NULL
def test latin1 latin1_swedish_ci NULL
tables_in_test
+v1
tables_in_mysql
mysql.backup_history
mysql.backup_progress
It looks like these statements aren't being processed:
I also noted that there is no direct mention of these views in the cleanup portion of the test
######## VIEW ########
let $diff_statement= SHOW TABLES LIKE 'v%';
send CREATE VIEW v2 AS SELECT a FROM t1 WHERE a > 100;
source include/kill_query_and_diff_master_slave.inc;
send DROP VIEW v1;
source include/kill_query_and_diff_master_slave.inc;
send DROP VIEW IF EXISTS v2;
source include/kill_query_and_diff_master_slave.inc;
How to repeat:
Run the testcase in the azalea tree:
./mtr --force rpl.rpl_killed_ddl
Observe the MTR output
Suggested fix:
Ensure that testcases clean up after themselves.
We could do this by running this test in its own database, then dropping the database at cleanup.
While the leftovers could indicate a problem, the test should show this problem in a different manner (ie explicit checks for the VIEWs after issuing a DROP statement) rather than leaving anything at the end of execution.