Description:
The test i_prefschema.table_leak fails randomly in 5.7, this can be seen in PB2.
The test verifies that a failed create table does not leave any traces in performance schema but apparently something else leaves something there.
Failure analysis of the test shows it as failed regularly in 5.7:
http://pb2.no.oracle.com/?template=mysql_show_test_failure&test_failure_id=&test_output_id...
Not been able to reproduce locally. Could depend on test case ordering.
How to repeat:
i_perfschema.table_leak w2 [ fail ]
Test ended at 2016-01-12 00:26:08 CURRENT_TEST: i_perfschema.table_leak --- /export/home/pb2/test/sb_2-17578326-1452549033.07/mysql-advanced-5.7.12-solaris11-sparc-64bit/internal/mysql-test/suite/i_perfschema/r/table_leak.result Mon Jan 11 17:22:12 2016
+++ /tmp/mtr-18971/var-n_mix/2/log/table_leak.reject Tue Jan 12 02:26:07 2016
@@ -12,6 +12,7 @@ from performance_schema.table_io_waits_summary_by_table where object_schema="test"; OBJECT_TYPE OBJECT_SCHEMA OBJECT_NAME
+TABLE test #sql_1
select OBJECT_TYPE, OBJECT_SCHEMA, OBJECT_NAME, INDEX_NAME from performance_schema.table_io_waits_summary_by_index_usage where object_schema="test";
Suggested fix:
Suspicion is that some previous test creates (or fails to create) a temp table which is then not unregistered from performance_schema. Checked the bug report which the test is for and it's testing one such use case, suspect there might be more.
Could also be some background processing in the msyqld who creates a temp table and thus the test should not SELECT tables with temporary names