Bug #78905 mysql test binlog.binlog_row_mix_innodb_myisam fails
Submitted: 21 Oct 2015 18:24 Modified: 18 Dec 2015 14:31
Reporter: Richard Prohaska Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: Tests Severity:S3 (Non-critical)
Version:5.7.9 OS:Ubuntu (14.04)
Assigned to: CPU Architecture:Any

[21 Oct 2015 18:24] Richard Prohaska
Description:
./mtr  binlog.binlog_row_mix_innodb_myisam
Logging: ./mtr  binlog.binlog_row_mix_innodb_myisam
MySQL Version 5.7.9
Checking supported features...
 - SSL connections supported
 - binaries are debug compiled
Collecting tests...
 - adding combinations for binlog
Checking leftover processes...
Removing old var directory...
Creating var directory '/home/rfp/mysql-server-install-2/mysql-test/var'...
Installing system database...

==============================================================================

TEST                                      RESULT   TIME (ms) or COMMENT
--------------------------------------------------------------------------

worker[1] Using MTR_BUILD_THREAD 308, with reserved ports 13080..13089
binlog.binlog_row_mix_innodb_myisam 'mix' [ skipped ]  Doesn't support --binlog-format='mixed'
binlog.binlog_row_mix_innodb_myisam 'row' [ fail ]
        Test ended at 2015-10-21 14:23:06

CURRENT_TEST: binlog.binlog_row_mix_innodb_myisam
--- /home/rfp/mysql-server-install-2/mysql-test/suite/binlog/r/binlog_row_mix_innodb_myisam.result      2015-10-21 16:15:32.000000000 +0300
+++ /home/rfp/mysql-server-install-2/mysql-test/var/log/binlog_row_mix_innodb_myisam.reject     2015-10-21 21:23:05.920504311 +0300
@@ -297,7 +297,6 @@
 master-bin.000001      #       Query   #       #       COMMIT
 master-bin.000001      #       Query   #       #       use `test`; create table t2 (n int) engine=innodb
 master-bin.000001      #       Query   #       #       use `test`; DROP /*!40005 TEMPORARY */ TABLE IF EXISTS `ti`
-master-bin.000001      #       Query   #       #       use `test`; DROP /*!40005 TEMPORARY */ TABLE IF EXISTS `t1`
 do release_lock("lock1");
 drop table t0,t2;
 set autocommit=0;

mysqltest: Result content mismatch

safe_process[10043]: Child process: 10044, exit: 1

 - the logfile can be found in '/home/rfp/mysql-server-install-2/mysql-test/var/log/binlog.binlog_row_mix_innodb_myisam-row/binlog_row_mix_innodb_myisam.log'

Only  2  of 3 completed.
mysql-test-run: *** ERROR: Not all tests completed

How to repeat:
build debug 5.7.9
run mtr  binlog.binlog_row_mix_innodb_myisam

Suggested fix:
probably just needs a test result file change.
[21 Oct 2015 19:16] MySQL Verification Team
Not repeatable on Windows. Will test on Linux:

C:\down\mysql-5.7.9\mysql-test>perl mysql-test-run.pl binlog.binlog_row_mix_innodb_myisam
Found handle.exe version 4.0
Logging: mysql-test-run.pl  binlog.binlog_row_mix_innodb_myisam
MySQL Version 5.7.9
Checking supported features...
 - SSL connections supported
 - binaries are debug compiled
Collecting tests...
 - adding combinations for binlog
Removing old var directory...
Creating var directory 'C:/down/mysql-5.7.9/mysql-test/var'...
Installing system database...

==============================================================================

TEST                                      RESULT   TIME (ms) or COMMENT
--------------------------------------------------------------------------

worker[1] Using MTR_BUILD_THREAD 300, with reserved ports 13000..13009
binlog.binlog_row_mix_innodb_myisam 'mix' [ skipped ]  Doesn't support --binlog-format='mixed'
binlog.binlog_row_mix_innodb_myisam 'row' [ pass ]  57637
binlog.binlog_row_mix_innodb_myisam 'stmt' [ skipped ]  Doesn't support --binlog-format='statement'
--------------------------------------------------------------------------
The servers were restarted 0 times
Spent 57.637 of 114 seconds executing testcases

Completed: All 1 tests were successful.

2 tests were skipped, 0 by the test itself.
[21 Oct 2015 20:08] MySQL Verification Team
Not repeatable on Linux CentOS 6.5 too:

[miguel@miguelbr mysql-test]$ ./mtr  binlog.binlog_row_mix_innodb_myisam                                                                   
Logging: ./mtr  binlog.binlog_row_mix_innodb_myisam                                                                                        
2015-10-21T20:05:12.323148Z 0 [Warning] Changed limits: max_open_files: 1024 (requested 5000)                                              
2015-10-21T20:05:12.323249Z 0 [Warning] Changed limits: table_open_cache: 431 (requested 2000)                                             
MySQL Version 5.7.9                                                                                                                        
Checking supported features...                                                                                                             
 - SSL connections supported
 - binaries are debug compiled
Collecting tests...
 - adding combinations for binlog
Removing old var directory...
Creating var directory '/home/miguel/mysql-5.7.9/mysql-test/var'...
Installing system database...

==============================================================================

TEST                                      RESULT   TIME (ms) or COMMENT
--------------------------------------------------------------------------

worker[1] Using MTR_BUILD_THREAD 300, with reserved ports 13000..13009
binlog.binlog_row_mix_innodb_myisam 'mix' [ skipped ]  Doesn't support --binlog-format='mixed'
binlog.binlog_row_mix_innodb_myisam 'row' [ pass ]  53844
binlog.binlog_row_mix_innodb_myisam 'stmt' [ skipped ]  Doesn't support --binlog-format='statement'
--------------------------------------------------------------------------
The servers were restarted 0 times
Spent 53.844 of 135 seconds executing testcases

Completed: All 1 tests were successful.

2 tests were skipped, 0 by the test itself.
[21 Oct 2015 21:50] Richard Prohaska
test is non-deterministic.  fails 1/10 runs on my machine.
mtr --repeat=10 --force --retry=0 binlog.binlog_row_mix_innodb_myisam
Completed: Failed 1/10 tests, 90.00% were successful.
[21 Oct 2015 23:56] MySQL Verification Team
Thank you for the feedback.

select count(*) from t1 /* must be 2 */;
count(*)
2
include/show_binlog_events.inc
Log_name        Pos     Event_type      Server_id       End_log_pos     Info
master-bin.000001       #       Query   #       #       BEGIN
master-bin.000001       #       Table_map       #       #       table_id: # (test.t1)
master-bin.000001       #       Write_rows      #       #       table_id: # flags: STMT_END_F
master-bin.000001       #       Query   #       #       COMMIT
drop trigger trg_del_t2;
drop table t1,t2,t3,t4,t5;
drop function bug27417;
<<<<

mysqltest: Result content mismatch

 - the logfile can be found in 'c:/build/2015oct09/mysql-5.7/mysql-test/var/log/binlog.binlog_row_mix_innodb_myisam-row/binlog_row_mix_innodb_myisam.log'
binlog.binlog_row_mix_innodb_myisam 'stmt' [ skipped ]  Doesn't support --binlog-format='statement'
--------------------------------------------------------------------------
The servers were restarted 0 times
Spent 390.362 of 471 seconds executing testcases

Completed: Failed 1/10 tests, 90.00% were successful.

Failing test(s): binlog.binlog_row_mix_innodb_myisam

The log files in var/log may give you some hint of what went wrong.

If you want to report this error, please read first the documentation
at http://dev.mysql.com/doc/mysql/en/mysql-test-suite.html

2 tests were skipped, 0 by the test itself.

mysql-test-run: *** ERROR: there were failing test cases

c:\build\2015oct09\mysql-5.7\mysql-test>
[22 Oct 2015 10:28] MySQL Verification Team
Repeatable only with: mtr --repeat=10 --force --retry=0 binlog.binlog_row_mix_innodb_myisam
[26 Oct 2015 19:51] Richard Prohaska
bug 78904 is probably also racy.
[18 Dec 2015 14:31] David Moss
Thanks for your feedback. This has been fixed in upcoming versions. As this issue was related only to test cases, a change log entry has not been added.