diff --git a/mysql-test/suite/binlog_encryption/my.cnf b/mysql-test/suite/binlog_encryption/my.cnf index 327fc0945a98..6abb280a45de 100644 --- a/mysql-test/suite/binlog_encryption/my.cnf +++ b/mysql-test/suite/binlog_encryption/my.cnf @@ -6,7 +6,7 @@ [mysqld.1] encrypt-binlog=1 master-verify-checksum=1 -log-bin=master-bin +log-bin=binlog plugin_dir=@env.KEYRING_PLUGIN_DIR early-plugin-load=@env.KEYRING_PLUGIN keyring_file_data=../../tmp/keyring1 diff --git a/mysql-test/suite/binlog_encryption/r/binlog_incident.result b/mysql-test/suite/binlog_encryption/r/binlog_incident.result index 70c38824fdfa..666f2e76a833 100644 --- a/mysql-test/suite/binlog_encryption/r/binlog_incident.result +++ b/mysql-test/suite/binlog_encryption/r/binlog_incident.result @@ -19,9 +19,9 @@ CREATE TABLE t1(c1 INT PRIMARY KEY, data TEXT(30000)) ENGINE=MyIsam; Got one of the listed errors include/show_binlog_events.inc Log_name Pos Event_type Server_id End_log_pos Info -master-bin.000001 # Query # # use `test`; CREATE TABLE t1(c1 INT PRIMARY KEY, data TEXT(30000)) ENGINE=MyIsam -master-bin.000001 # Incident # # #1 (LOST_EVENTS) -master-bin.000001 # Rotate # # master-bin.000002;pos=POS +binlog.000001 # Query # # use `test`; CREATE TABLE t1(c1 INT PRIMARY KEY, data TEXT(30000)) ENGINE=MyIsam +binlog.000001 # Incident # # #1 (LOST_EVENTS) +binlog.000001 # Rotate # # binlog.000002;pos=POS DROP TABLE t1; Contain RELOAD DATABASE 1 diff --git a/mysql-test/suite/binlog_encryption/r/binlog_index.result b/mysql-test/suite/binlog_encryption/r/binlog_index.result index cc705e389762..3b4d8d85db0a 100644 --- a/mysql-test/suite/binlog_encryption/r/binlog_index.result +++ b/mysql-test/suite/binlog_encryption/r/binlog_index.result @@ -10,194 +10,201 @@ flush logs; flush logs; show binary logs; Log_name File_size -master-bin.000001 # -master-bin.000002 # -master-bin.000003 # -master-bin.000004 # -purge binary logs TO 'master-bin.000004'; +binlog.000001 # +binlog.000002 # +binlog.000003 # +binlog.000004 # +# Create a dedicated user to demonstrate the BINLOG_ADMIN privilege +CREATE USER binlog_admin@localhost IDENTIFIED BY 'foo'; +GRANT BINLOG_ADMIN ON *.* TO binlog_admin@localhost; +purge binary logs TO 'binlog.000004'; Warnings: -Warning 1612 Being purged log master-bin.000001 was not found +Warning 1612 Being purged log binlog.000001 was not found +REVOKE binlog_admin ON *.* FROM binlog_admin@localhost; +purge binary logs TO 'binlog.000004'; +ERROR 42000: Access denied; you need (at least one of) the SUPER or BINLOG_ADMIN privilege(s) for this operation +DROP USER binlog_admin@localhost; *** must show a list starting from the 'TO' argument of PURGE *** show binary logs; Log_name File_size -master-bin.000004 # +binlog.000004 # reset master; flush logs; flush logs; flush logs; -*** must be a warning master-bin.000001 was not found *** +*** must be a warning binlog.000001 was not found *** Warnings: -Warning 1868 file master-bin.000004 was not purged because it is the active log file. -Warning 1612 Being purged log master-bin.000001 was not found +Warning 1868 file binlog.000004 was not purged because it is the active log file. +Warning 1612 Being purged log binlog.000001 was not found *** must show one record, of the active binlog, left in the index file after PURGE *** show binary logs; Log_name File_size -master-bin.000004 # +binlog.000004 # reset master; flush logs; flush logs; flush logs; -purge binary logs TO 'master-bin.000002'; +purge binary logs TO 'binlog.000002'; ERROR HY000: Fatal error during log purge show warnings; Level Code Message -Warning 1377 a problem with deleting master-bin.000001; consider examining correspondence of your binlog index file to the actual binlog files +Warning 1377 a problem with deleting binlog.000001; consider examining correspondence of your binlog index file to the actual binlog files Error 1377 Fatal error during log purge reset master; # crash_purge_before_update_index flush logs; SET SESSION debug="+d,crash_purge_before_update_index"; -purge binary logs TO 'master-bin.000002'; +purge binary logs TO 'binlog.000002'; ERROR HY000: Lost connection to MySQL server during query -SET @index=LOAD_FILE('MYSQLTEST_VARDIR/mysqld.1/data//master-bin.index'); +SET @index=LOAD_FILE('MYSQLTEST_VARDIR/mysqld.1/data//binlog.index'); SELECT @index; @index -master-bin.000001 -master-bin.000002 -master-bin.000003 +binlog.000001 +binlog.000002 +binlog.000003 # crash_purge_non_critical_after_update_index flush logs; SET SESSION debug="+d,crash_purge_non_critical_after_update_index"; -purge binary logs TO 'master-bin.000004'; +purge binary logs TO 'binlog.000004'; ERROR HY000: Lost connection to MySQL server during query -SET @index=LOAD_FILE('MYSQLTEST_VARDIR/mysqld.1/data//master-bin.index'); +SET @index=LOAD_FILE('MYSQLTEST_VARDIR/mysqld.1/data//binlog.index'); SELECT @index; @index -master-bin.000004 -master-bin.000005 +binlog.000004 +binlog.000005 # crash_purge_critical_after_update_index flush logs; SET SESSION debug="+d,crash_purge_critical_after_update_index"; -purge binary logs TO 'master-bin.000006'; +purge binary logs TO 'binlog.000006'; ERROR HY000: Lost connection to MySQL server during query -SET @index=LOAD_FILE('MYSQLTEST_VARDIR/mysqld.1/data//master-bin.index'); +SET @index=LOAD_FILE('MYSQLTEST_VARDIR/mysqld.1/data//binlog.index'); SELECT @index; @index -master-bin.000006 -master-bin.000007 +binlog.000006 +binlog.000007 # crash_create_non_critical_before_update_index SET SESSION debug="+d,crash_create_non_critical_before_update_index"; flush logs; ERROR HY000: Lost connection to MySQL server during query -SET @index=LOAD_FILE('MYSQLTEST_VARDIR/mysqld.1/data//master-bin.index'); +SET @index=LOAD_FILE('MYSQLTEST_VARDIR/mysqld.1/data//binlog.index'); SELECT @index; @index -master-bin.000006 -master-bin.000007 -master-bin.000008 +binlog.000006 +binlog.000007 +binlog.000008 # crash_create_critical_before_update_index SET SESSION debug="+d,crash_create_critical_before_update_index"; flush logs; ERROR HY000: Lost connection to MySQL server during query -SET @index=LOAD_FILE('MYSQLTEST_VARDIR/mysqld.1/data//master-bin.index'); +SET @index=LOAD_FILE('MYSQLTEST_VARDIR/mysqld.1/data//binlog.index'); SELECT @index; @index -master-bin.000006 -master-bin.000007 -master-bin.000008 -master-bin.000009 +binlog.000006 +binlog.000007 +binlog.000008 +binlog.000009 # crash_create_after_update_index SET SESSION debug="+d,crash_create_after_update_index"; flush logs; ERROR HY000: Lost connection to MySQL server during query -SET @index=LOAD_FILE('MYSQLTEST_VARDIR/mysqld.1/data//master-bin.index'); +SET @index=LOAD_FILE('MYSQLTEST_VARDIR/mysqld.1/data//binlog.index'); SELECT @index; @index -master-bin.000006 -master-bin.000007 -master-bin.000008 -master-bin.000009 -master-bin.000010 -master-bin.000011 +binlog.000006 +binlog.000007 +binlog.000008 +binlog.000009 +binlog.000010 +binlog.000011 # # This should put the server in unsafe state and stop # accepting any command. If we inject a fault at this # point and continue the execution the server crashes. # -SET @index=LOAD_FILE('MYSQLTEST_VARDIR/mysqld.1/data//master-bin.index'); +SET @index=LOAD_FILE('MYSQLTEST_VARDIR/mysqld.1/data//binlog.index'); SELECT @index; @index -master-bin.000006 -master-bin.000007 -master-bin.000008 -master-bin.000009 -master-bin.000010 -master-bin.000011 +binlog.000006 +binlog.000007 +binlog.000008 +binlog.000009 +binlog.000010 +binlog.000011 # fault_injection_registering_index SET SESSION debug="+d,fault_injection_registering_index"; SET GLOBAL binlog_error_action= IGNORE_ERROR; flush logs; -ERROR HY000: Can't open file: 'master-bin.000012' (errno: 1 - Operation not permitted) -SET @index=LOAD_FILE('MYSQLTEST_VARDIR/mysqld.1/data//master-bin.index'); +ERROR HY000: Can't open file: 'binlog.000012' (errno: 1 - Operation not permitted) +SET @index=LOAD_FILE('MYSQLTEST_VARDIR/mysqld.1/data//binlog.index'); SELECT @index; @index -master-bin.000006 -master-bin.000007 -master-bin.000008 -master-bin.000009 -master-bin.000010 -master-bin.000011 +binlog.000006 +binlog.000007 +binlog.000008 +binlog.000009 +binlog.000010 +binlog.000011 # restart -SET @index=LOAD_FILE('MYSQLTEST_VARDIR/mysqld.1/data//master-bin.index'); +SET @index=LOAD_FILE('MYSQLTEST_VARDIR/mysqld.1/data//binlog.index'); SELECT @index; @index -master-bin.000006 -master-bin.000007 -master-bin.000008 -master-bin.000009 -master-bin.000010 -master-bin.000011 -master-bin.000012 +binlog.000006 +binlog.000007 +binlog.000008 +binlog.000009 +binlog.000010 +binlog.000011 +binlog.000012 # fault_injection_updating_index SET SESSION debug="+d,fault_injection_updating_index"; SET GLOBAL binlog_error_action= IGNORE_ERROR; flush logs; -ERROR HY000: Can't open file: 'master-bin.000013' (errno: 1 - Operation not permitted) -SET @index=LOAD_FILE('MYSQLTEST_VARDIR/mysqld.1/data//master-bin.index'); +ERROR HY000: Can't open file: 'binlog.000013' (errno: 1 - Operation not permitted) +SET @index=LOAD_FILE('MYSQLTEST_VARDIR/mysqld.1/data//binlog.index'); SELECT @index; @index -master-bin.000006 -master-bin.000007 -master-bin.000008 -master-bin.000009 -master-bin.000010 -master-bin.000011 -master-bin.000012 +binlog.000006 +binlog.000007 +binlog.000008 +binlog.000009 +binlog.000010 +binlog.000011 +binlog.000012 # restart -SET @index=LOAD_FILE('MYSQLTEST_VARDIR/mysqld.1/data//master-bin.index'); +SET @index=LOAD_FILE('MYSQLTEST_VARDIR/mysqld.1/data//binlog.index'); SELECT @index; @index -master-bin.000006 -master-bin.000007 -master-bin.000008 -master-bin.000009 -master-bin.000010 -master-bin.000011 -master-bin.000012 -master-bin.000013 +binlog.000006 +binlog.000007 +binlog.000008 +binlog.000009 +binlog.000010 +binlog.000011 +binlog.000012 +binlog.000013 # Test case6: Set DEBUG POINT before rename index file when # appending a binlog file name to index file. show binary logs; Log_name File_size -master-bin.000006 # -master-bin.000007 # -master-bin.000008 # -master-bin.000009 # -master-bin.000010 # -master-bin.000011 # -master-bin.000012 # -master-bin.000013 # +binlog.000006 # +binlog.000007 # +binlog.000008 # +binlog.000009 # +binlog.000010 # +binlog.000011 # +binlog.000012 # +binlog.000013 # SET SESSION debug="+d,crash_create_before_rename_index_file"; flush logs; ERROR HY000: Lost connection to MySQL server during query @@ -206,16 +213,16 @@ ERROR HY000: Lost connection to MySQL server during query # i.e. binlog file name is added. show binary logs; Log_name File_size -master-bin.000006 # -master-bin.000007 # -master-bin.000008 # -master-bin.000009 # -master-bin.000010 # -master-bin.000011 # -master-bin.000012 # -master-bin.000013 # -master-bin.000014 # -master-bin.000015 # +binlog.000006 # +binlog.000007 # +binlog.000008 # +binlog.000009 # +binlog.000010 # +binlog.000011 # +binlog.000012 # +binlog.000013 # +binlog.000014 # +binlog.000015 # # Test case7: Set DEBUG POINT after rename index file when # appending a binlog file name to index file. SET SESSION debug="+d,crash_create_after_rename_index_file"; @@ -226,168 +233,168 @@ ERROR HY000: Lost connection to MySQL server during query # i.e. binlog file name is added. show binary logs; Log_name File_size -master-bin.000006 # -master-bin.000007 # -master-bin.000008 # -master-bin.000009 # -master-bin.000010 # -master-bin.000011 # -master-bin.000012 # -master-bin.000013 # -master-bin.000014 # -master-bin.000015 # -master-bin.000016 # -master-bin.000017 # +binlog.000006 # +binlog.000007 # +binlog.000008 # +binlog.000009 # +binlog.000010 # +binlog.000011 # +binlog.000012 # +binlog.000013 # +binlog.000014 # +binlog.000015 # +binlog.000016 # +binlog.000017 # # Test case8: Set DEBUG POINT after rename index file when # purging the index file. show binary logs; Log_name File_size -master-bin.000006 # -master-bin.000007 # -master-bin.000008 # -master-bin.000009 # -master-bin.000010 # -master-bin.000011 # -master-bin.000012 # -master-bin.000013 # -master-bin.000014 # -master-bin.000015 # -master-bin.000016 # -master-bin.000017 # +binlog.000006 # +binlog.000007 # +binlog.000008 # +binlog.000009 # +binlog.000010 # +binlog.000011 # +binlog.000012 # +binlog.000013 # +binlog.000014 # +binlog.000015 # +binlog.000016 # +binlog.000017 # SET SESSION debug="+d,crash_create_after_rename_index_file"; -purge binary logs TO 'master-bin.000010'; +purge binary logs TO 'binlog.000010'; ERROR HY000: Lost connection to MySQL server during query # Restart the master server # Test if the index file has the correct data, # i.e. requested binlog file names are removed. show binary logs; Log_name File_size -master-bin.000010 # -master-bin.000011 # -master-bin.000012 # -master-bin.000013 # -master-bin.000014 # -master-bin.000015 # -master-bin.000016 # -master-bin.000017 # -master-bin.000018 # +binlog.000010 # +binlog.000011 # +binlog.000012 # +binlog.000013 # +binlog.000014 # +binlog.000015 # +binlog.000016 # +binlog.000017 # +binlog.000018 # # Test case9: Set DEBUG POINT befor rename index file when # purging the index file. show binary logs; Log_name File_size -master-bin.000010 # -master-bin.000011 # -master-bin.000012 # -master-bin.000013 # -master-bin.000014 # -master-bin.000015 # -master-bin.000016 # -master-bin.000017 # -master-bin.000018 # +binlog.000010 # +binlog.000011 # +binlog.000012 # +binlog.000013 # +binlog.000014 # +binlog.000015 # +binlog.000016 # +binlog.000017 # +binlog.000018 # SET SESSION debug="+d,crash_create_before_rename_index_file"; -purge binary logs TO 'master-bin.000012'; +purge binary logs TO 'binlog.000012'; ERROR HY000: Lost connection to MySQL server during query # Restart the master server # Test if the index file has the correct data, # i.e. requested binlog file names are removed. show binary logs; Log_name File_size -master-bin.000012 # -master-bin.000013 # -master-bin.000014 # -master-bin.000015 # -master-bin.000016 # -master-bin.000017 # -master-bin.000018 # -master-bin.000019 # +binlog.000012 # +binlog.000013 # +binlog.000014 # +binlog.000015 # +binlog.000016 # +binlog.000017 # +binlog.000018 # +binlog.000019 # # Test case10: Inject a fault to copy part content to the temp file # when purging the index file. show binary logs; Log_name File_size -master-bin.000012 # -master-bin.000013 # -master-bin.000014 # -master-bin.000015 # -master-bin.000016 # -master-bin.000017 # -master-bin.000018 # -master-bin.000019 # +binlog.000012 # +binlog.000013 # +binlog.000014 # +binlog.000015 # +binlog.000016 # +binlog.000017 # +binlog.000018 # +binlog.000019 # SET SESSION debug="+d,fault_injection_copy_part_file"; -purge binary logs TO 'master-bin.000014'; +purge binary logs TO 'binlog.000014'; ERROR HY000: Lost connection to MySQL server during query # Restart the master server # Test the index file is complete, although is not purged successfully. show binary logs; Log_name File_size -master-bin.000012 # -master-bin.000013 # -master-bin.000014 # -master-bin.000015 # -master-bin.000016 # -master-bin.000017 # -master-bin.000018 # -master-bin.000019 # -master-bin.000020 # +binlog.000012 # +binlog.000013 # +binlog.000014 # +binlog.000015 # +binlog.000016 # +binlog.000017 # +binlog.000018 # +binlog.000019 # +binlog.000020 # # Test case11: Bug #20381055SERVER CRASHES IF INDEX FILE IS OPENED BY SET SESSION debug="d,force_index_file_delete_failure"; call mtr.add_suppression("Failed to delete the existing index file"); call mtr.add_suppression("failed to move crash safe index file to index file"); call mtr.add_suppression("failed to update the index file"); -PURGE BINARY LOGS TO 'master-bin.000014';; +PURGE BINARY LOGS TO 'binlog.000014';; ERROR HY000: I/O error reading log index file # Test the index file is complete, although is not purged successfully. # Also this will indicate that binary logging is not disabled. show binary logs; Log_name File_size -master-bin.000012 # -master-bin.000013 # -master-bin.000014 # -master-bin.000015 # -master-bin.000016 # -master-bin.000017 # -master-bin.000018 # -master-bin.000019 # -master-bin.000020 # +binlog.000012 # +binlog.000013 # +binlog.000014 # +binlog.000015 # +binlog.000016 # +binlog.000017 # +binlog.000018 # +binlog.000019 # +binlog.000020 # SET GLOBAL binlog_error_action='IGNORE_ERROR'; FLUSH LOGS; -ERROR HY000: Can't open file: 'master-bin.000021' (errno: 1 - Operation not permitted) +ERROR HY000: Can't open file: 'binlog.000021' (errno: 1 - Operation not permitted) SHOW BINARY LOGS; ERROR HY000: You are not using binary logging # restart show binary logs; Log_name File_size -master-bin.000012 # -master-bin.000013 # -master-bin.000014 # -master-bin.000015 # -master-bin.000016 # -master-bin.000017 # -master-bin.000018 # -master-bin.000019 # -master-bin.000020 # -master-bin.000021 # +binlog.000012 # +binlog.000013 # +binlog.000014 # +binlog.000015 # +binlog.000016 # +binlog.000017 # +binlog.000018 # +binlog.000019 # +binlog.000020 # +binlog.000021 # CREATE TABLE t1(i INT); SET GLOBAL binlog_error_action='IGNORE_ERROR'; SET SESSION debug="+d,force_index_file_delete_failure"; SET SESSION debug="+d,force_rotate"; INSERT INTO t1 VALUES (12); -ERROR HY000: Can't open file: 'master-bin.000022' (errno: 1 - Operation not permitted) +ERROR HY000: Can't open file: 'binlog.000022' (errno: 1 - Operation not permitted) SHOW BINARY LOGS; ERROR HY000: You are not using binary logging # restart show binary logs; Log_name File_size -master-bin.000012 # -master-bin.000013 # -master-bin.000014 # -master-bin.000015 # -master-bin.000016 # -master-bin.000017 # -master-bin.000018 # -master-bin.000019 # -master-bin.000020 # -master-bin.000021 # -master-bin.000022 # +binlog.000012 # +binlog.000013 # +binlog.000014 # +binlog.000015 # +binlog.000016 # +binlog.000017 # +binlog.000018 # +binlog.000019 # +binlog.000020 # +binlog.000021 # +binlog.000022 # DROP TABLE t1; # Test case11: Ends SET SESSION debug=""; diff --git a/mysql-test/suite/binlog_encryption/r/binlog_write_error.result b/mysql-test/suite/binlog_encryption/r/binlog_write_error.result index 303ccd3bece0..45080039edbc 100644 --- a/mysql-test/suite/binlog_encryption/r/binlog_write_error.result +++ b/mysql-test/suite/binlog_encryption/r/binlog_write_error.result @@ -19,7 +19,7 @@ DROP VIEW IF EXISTS v1, v2; # CREATE TABLE t1 (a INT); CREATE TABLE t1 (a INT); -ERROR HY000: Error writing file 'master-bin' ((errno: #) +ERROR HY000: Error writing file 'binlog' ((errno: #) # The above CREATE TABLE should be rolled back. # Now we check this fact and create table for real. SELECT * FROM t1; @@ -28,13 +28,13 @@ CREATE TABLE t1 (a INT); INSERT INTO t1 VALUES (1),(2),(3); INSERT INTO t1 VALUES (4),(5),(6); INSERT INTO t1 VALUES (4),(5),(6); -ERROR HY000: Error writing file 'master-bin' ((errno: #) +ERROR HY000: Error writing file 'binlog' ((errno: #) UPDATE t1 set a=a+1; UPDATE t1 set a=a+1; -ERROR HY000: Error writing file 'master-bin' ((errno: #) +ERROR HY000: Error writing file 'binlog' ((errno: #) DELETE FROM t1; DELETE FROM t1; -ERROR HY000: Error writing file 'master-bin' ((errno: #) +ERROR HY000: Error writing file 'binlog' ((errno: #) # Check that the above DML statements were rolled back and # had no effect on t1. SELECT * FROM t1; @@ -44,12 +44,12 @@ a 3 CREATE TRIGGER tr1 AFTER INSERT ON t1 FOR EACH ROW INSERT INTO t1 VALUES (new.a + 100); CREATE TRIGGER tr1 AFTER INSERT ON t1 FOR EACH ROW INSERT INTO t1 VALUES (new.a + 100); -ERROR HY000: Error writing file 'master-bin' ((errno: #) +ERROR HY000: Error writing file 'binlog' ((errno: #) SHOW CREATE TRIGGER tr1; ERROR HY000: Trigger does not exist ALTER TABLE t1 ADD (b INT); ALTER TABLE t1 ADD (b INT); -ERROR HY000: Error writing file 'master-bin' ((errno: #) +ERROR HY000: Error writing file 'binlog' ((errno: #) # The above ALTER TABLE was rolled back. Check this. SHOW CREATE TABLE t1; Table Create Table @@ -58,42 +58,42 @@ t1 CREATE TABLE `t1` ( ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci CREATE VIEW v1 AS SELECT a FROM t1; CREATE VIEW v1 AS SELECT a FROM t1; -ERROR HY000: Error writing file 'master-bin' ((errno: #) +ERROR HY000: Error writing file 'binlog' ((errno: #) # The above CREATE VIEW was rolled back. Check this. SHOW CREATE VIEW v1; ERROR 42S02: Table 'test.v1' doesn't exist CREATE PROCEDURE p1(OUT `rows` INT) SELECT count(*) INTO `rows` FROM t1; CREATE PROCEDURE p1(OUT `rows` INT) SELECT count(*) INTO `rows` FROM t1; -ERROR HY000: Error writing file 'master-bin' ((errno: #) +ERROR HY000: Error writing file 'binlog' ((errno: #) # The above CREATE Procedure was rolled back. Check this. SHOW CREATE PROCEDURE p1; ERROR 42000: PROCEDURE p1 does not exist DROP TABLE t1; DROP TABLE t1; -ERROR HY000: Error writing file 'master-bin' ((errno: #) +ERROR HY000: Error writing file 'binlog' ((errno: #) # The above DROP TABLE was rolled back. Delete it for real # this also checks that table was not deleted by the above # attempt. DROP TABLE t1; CREATE FUNCTION f1() RETURNS INT return 1; CREATE FUNCTION f1() RETURNS INT return 1; -ERROR HY000: Error writing file 'master-bin' ((errno: #) +ERROR HY000: Error writing file 'binlog' ((errno: #) # The above CREATE Procedure was rolled back. Check this. SHOW CREATE FUNCTION f1; ERROR 42000: FUNCTION f1 does not exist CREATE USER user1; CREATE USER user1; -ERROR HY000: Error writing file 'master-bin' ((errno: #) +ERROR HY000: Error writing file 'binlog' ((errno: #) # Since the previous CREATE USER is failed due to an error while writing # to binlog and changes made by the statement has been rolled back # we have to create user1 to be able to test REVOKE ALL and DROP USER. CREATE USER user1; REVOKE ALL PRIVILEGES, GRANT OPTION FROM user1; REVOKE ALL PRIVILEGES, GRANT OPTION FROM user1; -ERROR HY000: Error writing file 'master-bin' ((errno: #) +ERROR HY000: Error writing file 'binlog' ((errno: #) DROP USER user1; DROP USER user1; -ERROR HY000: Error writing file 'master-bin' ((errno: #) +ERROR HY000: Error writing file 'binlog' ((errno: #) # Since the previous DROP USER is failed we have to do a clean up explicitly. DROP USER user1; # diff --git a/mysql-test/suite/binlog_encryption/r/encryption_init_error.result b/mysql-test/suite/binlog_encryption/r/encryption_init_error.result index d3247a3047c9..2f8419974d0b 100644 --- a/mysql-test/suite/binlog_encryption/r/encryption_init_error.result +++ b/mysql-test/suite/binlog_encryption/r/encryption_init_error.result @@ -1,13 +1,14 @@ call mtr.add_suppression("Failed to fetch or create percona_binlog key from/in keyring and thus failed to initialize binlog encryption. Have you enabled keyring plugin?"); -call mtr.add_suppression("Could not use ./master-bin.000002 for logging"); -call mtr.add_suppression("Could not open ./master-bin.000002 for logging"); +call mtr.add_suppression("Could not use ./binlog.000002 for logging"); +call mtr.add_suppression("Could not open ./binlog.000002 for logging"); +RESET MASTER; SET debug="+d,binlog_encryption_error_on_key_fetch"; SELECT 1; 1 1 SET GLOBAL binlog_error_action= IGNORE_ERROR; FLUSH LOGS; -ERROR HY000: Can't open file: './master-bin.000002' (errno: 1 - Operation not permitted) +ERROR HY000: Can't open file: './binlog.000002' (errno: 1 - Operation not permitted) SET debug="-d,binlog_encryption_error_on_key_fetch"; SET GLOBAL binlog_error_action= ABORT_SERVER; # restart diff --git a/mysql-test/suite/binlog_encryption/t/encryption_init_error.test b/mysql-test/suite/binlog_encryption/t/encryption_init_error.test index 1421f74fd393..c532ec33359c 100644 --- a/mysql-test/suite/binlog_encryption/t/encryption_init_error.test +++ b/mysql-test/suite/binlog_encryption/t/encryption_init_error.test @@ -2,11 +2,13 @@ source include/have_log_bin.inc; source include/have_debug.inc; call mtr.add_suppression("Failed to fetch or create percona_binlog key from/in keyring and thus failed to initialize binlog encryption. Have you enabled keyring plugin?"); -call mtr.add_suppression("Could not use ./master-bin.000002 for logging"); -call mtr.add_suppression("Could not open ./master-bin.000002 for logging"); +call mtr.add_suppression("Could not use ./binlog.000002 for logging"); +call mtr.add_suppression("Could not open ./binlog.000002 for logging"); let $saved_binlog_error_action=`SELECT @@GLOBAL.binlog_error_action`; +RESET MASTER; + SET debug="+d,binlog_encryption_error_on_key_fetch"; SELECT 1; SET GLOBAL binlog_error_action= IGNORE_ERROR; diff --git a/mysql-test/suite/binlog_encryption/t/mysqlbinlog.test b/mysql-test/suite/binlog_encryption/t/mysqlbinlog.test index 0d7739904629..cc4bd042c57a 100644 --- a/mysql-test/suite/binlog_encryption/t/mysqlbinlog.test +++ b/mysql-test/suite/binlog_encryption/t/mysqlbinlog.test @@ -9,7 +9,7 @@ REPLACE INTO t1 VALUES (4); DROP TABLE t1; FLUSH LOGS; -let filename= master-bin.000001; +let filename= binlog.000001; let local=$datadir/$filename; let remote=--read-from-remote-server --protocol=tcp --host=127.0.0.1 --port=$MASTER_MYPORT -uroot $filename; let outfile=$MYSQLTEST_VARDIR/tmp/binlog_enc.sql; diff --git a/mysql-test/suite/group_replication/r/gr_recovery_super_read_only.result b/mysql-test/suite/group_replication/r/gr_recovery_super_read_only.result index 2244474866b0..ef95d1a85bf3 100644 --- a/mysql-test/suite/group_replication/r/gr_recovery_super_read_only.result +++ b/mysql-test/suite/group_replication/r/gr_recovery_super_read_only.result @@ -17,6 +17,7 @@ ERROR HY000: The MySQL server is running with the --super-read-only option so it SET DEBUG_SYNC= "now SIGNAL signal.recovery_continue"; # Now wait for the node to be online include/gr_wait_for_member_state.inc +SET DEBUG_SYNC= "reset"; # Table creation should pass as the single member is now recovered. CREATE TABLE t1 (i INT NOT NULL PRIMARY KEY); SET @@GLOBAL.DEBUG= @debug_save; diff --git a/mysql-test/suite/group_replication/t/gr_recovery_super_read_only.test b/mysql-test/suite/group_replication/t/gr_recovery_super_read_only.test index 1b31b4f61042..d0f212b4b6d2 100644 --- a/mysql-test/suite/group_replication/t/gr_recovery_super_read_only.test +++ b/mysql-test/suite/group_replication/t/gr_recovery_super_read_only.test @@ -56,6 +56,8 @@ SET DEBUG_SYNC= "now SIGNAL signal.recovery_continue"; --let $group_replication_member_state= ONLINE --source include/gr_wait_for_member_state.inc +SET DEBUG_SYNC= "reset"; + --echo # Table creation should pass as the single member is now recovered. CREATE TABLE t1 (i INT NOT NULL PRIMARY KEY); SET @@GLOBAL.DEBUG= @debug_save; diff --git a/mysql-test/suite/rpl/r/bug58546.result b/mysql-test/suite/rpl/r/bug58546.result index 4db0af3008fd..bb6c67c25088 100644 --- a/mysql-test/suite/rpl/r/bug58546.result +++ b/mysql-test/suite/rpl/r/bug58546.result @@ -3,6 +3,8 @@ Warnings: Note #### Sending passwords in plain text without SSL/TLS is extremely insecure. Note #### Storing MySQL user name or password information in the master info repository is not secure and is therefore not recommended. Please consider using the USER and PASSWORD connection options for START SLAVE; see the 'START SLAVE Syntax' in the MySQL Manual for more information. [connection master] +call mtr.add_suppression("Statement is unsafe because it accesses a non-transactional table after accessing a transactional"); +call mtr.add_suppression("Request to stop slave SQL Thread received while applying a group that has non-transactional changes"); # Bug#58546 test rpl_packet timeout failure sporadically on PB # ---------------------------------------------------------------------- @@ -28,8 +30,6 @@ UPDATE t1 SET c2 = 2 WHERE c1 = 1; BEGIN; INSERT INTO t1 VALUES(2, 2); INSERT INTO t2 VALUES(1); -Warnings: -Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a non-transactional table after accessing a transactional table within the same transaction. UPDATE t1 SET c2 = 3 WHERE c1 = 1; COMMIT; [connection slave1] diff --git a/mysql-test/suite/rpl/t/bug58546.test b/mysql-test/suite/rpl/t/bug58546.test index 10c337c51fff..7167e531ce51 100644 --- a/mysql-test/suite/rpl/t/bug58546.test +++ b/mysql-test/suite/rpl/t/bug58546.test @@ -4,6 +4,9 @@ source include/have_debug_sync.inc; source include/have_binlog_format_mixed_or_statement.inc; source include/master-slave.inc; +call mtr.add_suppression("Statement is unsafe because it accesses a non-transactional table after accessing a transactional"); +call mtr.add_suppression("Request to stop slave SQL Thread received while applying a group that has non-transactional changes"); + --echo --echo # Bug#58546 test rpl_packet timeout failure sporadically on PB --echo # ---------------------------------------------------------------------- @@ -37,7 +40,9 @@ UPDATE t1 SET c2 = 2 WHERE c1 = 1; --source include/rpl_connection_master.inc BEGIN; INSERT INTO t1 VALUES(2, 2); +--disable_warnings INSERT INTO t2 VALUES(1); +--enable_warnings UPDATE t1 SET c2 = 3 WHERE c1 = 1; COMMIT; diff --git a/mysql-test/suite/rpl/t/bug68490-slave.opt b/mysql-test/suite/rpl/t/bug68490-slave.opt index 7f0e9f39960b..b32779195f9e 100644 --- a/mysql-test/suite/rpl/t/bug68490-slave.opt +++ b/mysql-test/suite/rpl/t/bug68490-slave.opt @@ -1,2 +1,3 @@ --max_allowed_packet=1M --slave_max_allowed_packet=1G +--master-retry-count=0 diff --git a/mysql-test/suite/rpl/t/disabled.def b/mysql-test/suite/rpl/t/disabled.def index 759bb830a264..59b63ced5bf9 100644 --- a/mysql-test/suite/rpl/t/disabled.def +++ b/mysql-test/suite/rpl/t/disabled.def @@ -16,3 +16,4 @@ rpl_io_thd_wait_for_disk_space_stress : Bug#23581287 2017-09-22 Deepthi Disabled rpl.rpl_server_uuid @windows : Bug#20341933 2014-07-22 Anitha Fails consistently on windows rpl_semi_sync_group_commit_deadlock : percona disabled until http://bugs.mysql.com/bug.php?id=80581 is fixed rpl_semi_sync_non_group_commit_deadlock : percona disabled until http://bugs.mysql.com/bug.php?id=80581 is fixed +rpl_xtradb_compressed_columns : percona disabled until zip dict 8.0 reimplementation diff --git a/mysql-test/suite/rpl_encryption/r/encrypted_master_lost_key.result b/mysql-test/suite/rpl_encryption/r/encrypted_master_lost_key.result index 414e1f513a9f..fc74ceb62ce5 100644 --- a/mysql-test/suite/rpl_encryption/r/encrypted_master_lost_key.result +++ b/mysql-test/suite/rpl_encryption/r/encrypted_master_lost_key.result @@ -24,7 +24,7 @@ INSERT INTO table1_to_encrypt SELECT NULL,NOW(),b FROM table1_to_encrypt; SET binlog_format=ROW; INSERT INTO table1_to_encrypt SELECT NULL,NOW(),b FROM table1_to_encrypt; INSERT INTO table1_to_encrypt SELECT NULL,NOW(),b FROM table1_to_encrypt; -NOT FOUND /table1_to_encrypt/ in master-bin.0* +Pattern "table1_to_encrypt" not found ################################################################ # Pre-test 2: restart master with a different keys' storage file ################################################################ @@ -58,7 +58,7 @@ INSERT INTO table2_to_encrypt SELECT NULL,NOW(),b FROM table2_to_encrypt; INSERT INTO table2_to_encrypt SELECT NULL,NOW(),b FROM table2_to_encrypt; # Make sure that binary logs are encrypted by making sure that plain text # table name is not present in the binary log -NOT FOUND /table2_to_encrypt/ in master-bin.0* +Pattern "table2_to_encrypt" not found UNINSTALL PLUGIN keyring_file; ##################################################### # Pre-test 3: restart master again with the right key @@ -103,7 +103,11 @@ connection master; connection server_2; START SLAVE SQL_THREAD; START SLAVE IO_THREAD; -include/wait_for_slave_io_error.inc [errno=1236] +include/wait_for_slave_io_error.inc [errno=13114 # ER_SERVER_MASTER_FATAL_ERROR_READING_BINLOG] +include/sync_slave_sql_with_io.inc +connection server_2; +connection server_2; +connection server_2; SHOW TABLES; Tables_in_test table1_to_encrypt @@ -112,7 +116,7 @@ table1_to_encrypt # from a good binary log ##################################################### connection server_2; -include/stop_slave.inc +include/stop_slave_sql.inc RESET SLAVE ALL; DROP DATABASE test; CREATE DATABASE test; diff --git a/mysql-test/suite/rpl_encryption/r/encrypted_master_switch_to_unencrypted.result b/mysql-test/suite/rpl_encryption/r/encrypted_master_switch_to_unencrypted.result index c359cd619171..fb6e5e899963 100644 --- a/mysql-test/suite/rpl_encryption/r/encrypted_master_switch_to_unencrypted.result +++ b/mysql-test/suite/rpl_encryption/r/encrypted_master_switch_to_unencrypted.result @@ -28,7 +28,7 @@ SET binlog_format=ROW; INSERT INTO table1_no_encryption SELECT NULL,NOW(),b FROM table1_no_encryption; INSERT INTO table1_no_encryption SELECT NULL,NOW(),b FROM table1_no_encryption; # Make sure that binary logs are not encrypted -FOUND /table1_no_encryption/ in master-bin.0* +Pattern "table1_no_encryption" found include/save_master_pos.inc connection master; ##################################################### @@ -63,7 +63,7 @@ SET binlog_format=ROW; INSERT INTO table2_to_encrypt SELECT NULL,NOW(),b FROM table2_to_encrypt; INSERT INTO table2_to_encrypt SELECT NULL,NOW(),b FROM table2_to_encrypt; # Make sure that binary logs are encrypted -NOT FOUND /table2_to_encrypt/ in master-bin.0* +Pattern "table2_to_encrypt" not found ##################################################### # Part 3: restart master again without encryption ##################################################### @@ -107,14 +107,14 @@ include/save_master_pos.inc connection master; connection slave; call mtr.add_suppression("Slave I/O for channel '': Got fatal error 1236 from master when reading data from binary log: 'Could not decrypt binlog: encryption key error;"); -include/wait_for_slave_io_error.inc [errno=1236] +include/wait_for_slave_io_error.inc [errno=13114 # ER_SERVER_MASTER_FATAL_ERROR_READING_BINLOG] connection slave; connection slave; connection slave; SHOW TABLES; Tables_in_test table1_no_encryption -include/stop_slave.inc +include/stop_slave_sql.inc RESET SLAVE; ########## # Cleanup diff --git a/mysql-test/suite/rpl_encryption/r/encrypted_master_unload_keyring.result b/mysql-test/suite/rpl_encryption/r/encrypted_master_unload_keyring.result index 204a85a1fb00..b7471e0d9778 100644 --- a/mysql-test/suite/rpl_encryption/r/encrypted_master_unload_keyring.result +++ b/mysql-test/suite/rpl_encryption/r/encrypted_master_unload_keyring.result @@ -23,7 +23,7 @@ FLUSH BINARY LOGS; SET binlog_format=ROW; INSERT INTO table1_encryption SELECT NULL,NOW(),b FROM table1_encryption; INSERT INTO table1_encryption SELECT NULL,NOW(),b FROM table1_encryption; -NOT FOUND /table1_encryption/ in master-bin.0* +Pattern "table1_encryption" not found ################################################################################# # Part 2: restart master, without binlog encryption and without keyring plugin ################################################################################# @@ -44,7 +44,7 @@ FLUSH BINARY LOGS; SET binlog_format=ROW; INSERT INTO table2_no_encryption SELECT NULL,NOW(),b FROM table2_no_encryption; INSERT INTO table2_no_encryption SELECT NULL,NOW(),b FROM table2_no_encryption; -FOUND /table2_no_encryption/ in master-bin.0* +Pattern "table2_no_encryption" found include/assert_grep.inc [Found the expected warning "Error reading GTIDs from binary log: -1" in master's error log.] include/assert_grep.inc [Found the expected warning "Error initializing decryption while reading GTIDs from binary log" in slave's error log.] ################################################ diff --git a/mysql-test/suite/rpl_encryption/r/encrypted_slave.result b/mysql-test/suite/rpl_encryption/r/encrypted_slave.result index c966c4baff79..37fa81da3bf5 100644 --- a/mysql-test/suite/rpl_encryption/r/encrypted_slave.result +++ b/mysql-test/suite/rpl_encryption/r/encrypted_slave.result @@ -17,9 +17,7 @@ CREATE DATABASE database_name_to_encrypt; USE database_name_to_encrypt; CREATE USER user_name_to_encrypt; GRANT ALL ON database_name_to_encrypt.* TO user_name_to_encrypt; -SET PASSWORD FOR user_name_to_encrypt = PASSWORD('password_to_encrypt'); -Warnings: -Warning 1287 'SET PASSWORD FOR = PASSWORD('')' is deprecated and will be removed in a future release. Please use SET PASSWORD FOR = '' instead +SET PASSWORD FOR user_name_to_encrypt = 'password_to_encrypt'; CREATE TABLE innodb_table_name_to_encrypt ( int_column_name_to_encrypt INT PRIMARY KEY, timestamp_column_name_to_encrypt TIMESTAMP(6) NULL, @@ -98,7 +96,7 @@ disconnect con1; connection server_1; CREATE INDEX index_name_to_encrypt ON myisam_table_name_to_encrypt (datetime_column_name_to_encrypt); -ALTER DATABASE database_name_to_encrypt CHARACTER SET utf8; +ALTER DATABASE database_name_to_encrypt CHARACTER SET utf8mb4; ALTER TABLE innodb_table_name_to_encrypt MODIFY timestamp_column_name_to_encrypt TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP @@ -156,9 +154,9 @@ DROP SERVER server_name_to_encrypt; ################# # Let's make sure that master binlog files are not encrypted by finding some # plain texts that we know would appear in not encrypted binary log files. -FOUND /_to_encrypt/ in master-bin.0* -FOUND /COMMIT/ in master-bin.0* -FOUND /TIMESTAMP/ in master-bin.0* +Pattern "_to_encrypt" found +Pattern "COMMIT" found +Pattern "TIMESTAMP" found include/sync_slave_io_with_master.inc connection server_1; connection server_2; @@ -171,9 +169,9 @@ connection server_2; connection server_2; # Here we try to find several plain texts that would appear in not encrypted binlog files. # The searches should fail as we expect the binlog files to be encrypted. -NOT FOUND /_to_encrypt/ in slave-relay-bin.0* -NOT FOUND /COMMIT/ in slave-relay-bin.0* -NOT FOUND /TIMESTAMP/ in slave-relay-bin.0* +Pattern "_to_encrypt" not found +Pattern "COMMIT" not found +Pattern "TIMESTAMP" not found ################# # Slave binlog checks ################# @@ -187,9 +185,9 @@ connection server_2; connection server_2; connection server_2; connection server_2; -NOT FOUND /_to_encrypt/ in slave-bin.0* -NOT FOUND /COMMIT/ in slave-bin.0* -NOT FOUND /TIMESTAMP/ in slave-bin.0* +Pattern "_to_encrypt" not found +Pattern "COMMIT" not found +Pattern "TIMESTAMP" not found ########## # Cleanup ########## diff --git a/mysql-test/suite/rpl_encryption/r/encrypted_slave_without_keyring_and_bin_off_relay_on.result b/mysql-test/suite/rpl_encryption/r/encrypted_slave_without_keyring_and_bin_off_relay_on.result index 7b1ee1008f4d..048dde052a94 100644 --- a/mysql-test/suite/rpl_encryption/r/encrypted_slave_without_keyring_and_bin_off_relay_on.result +++ b/mysql-test/suite/rpl_encryption/r/encrypted_slave_without_keyring_and_bin_off_relay_on.result @@ -15,6 +15,8 @@ SET GLOBAL binlog_error_action= ABORT_SERVER; FLUSH LOGS; ERROR HY000: Binary logging not possible. Message: Either disk is full or file system is read only or encryption failed while opening the relay_log. Aborting the server. # Check that error messages related to encryption are present in error log +Pattern "Binary logging not possible. Message: Either disk is full or file system is read only or encryption failed while opening the relay_log. Aborting the server." found +Pattern "Failed to fetch or create percona_binlog key from/in keyring and thus failed to initialize relay_log encryption. Have you enabled keyring plugin?" found include/rpl_start_server.inc [server_number=2] include/start_slave.inc include/sync_slave_sql_with_master.inc diff --git a/mysql-test/suite/rpl_encryption/r/encryption_combo.result b/mysql-test/suite/rpl_encryption/r/encryption_combo.result index 5698b3b37639..0cb58fac2221 100644 --- a/mysql-test/suite/rpl_encryption/r/encryption_combo.result +++ b/mysql-test/suite/rpl_encryption/r/encryption_combo.result @@ -23,7 +23,7 @@ FLUSH BINARY LOGS; SET binlog_format=ROW; INSERT INTO table1_no_encryption SELECT NULL,NOW(),b FROM table1_no_encryption; INSERT INTO table1_no_encryption SELECT NULL,NOW(),b FROM table1_no_encryption; -FOUND /table1_no_encryption/ in master-bin.0* +Pattern "table1_no_encryption" found ##################################################### # Part 2: restart master, now with binlog encryption ##################################################### @@ -58,7 +58,7 @@ INSERT INTO table2_to_encrypt SELECT NULL,NOW(),b FROM table2_to_encrypt; INSERT INTO table2_to_encrypt SELECT NULL,NOW(),b FROM table2_to_encrypt; # Here we try to find several plain texts that would appear in not encrypted binlog files. # The searches should fail as we expect the binlog files to be encrypted. -NOT FOUND /table2_to_encrypt/ in master-bin.0* +Pattern "table2_to_encrypt" not found ##################################################### # Part 3: restart master again without encryption ##################################################### diff --git a/mysql-test/suite/rpl_encryption/r/rpl_binlog_errors.result b/mysql-test/suite/rpl_encryption/r/rpl_binlog_errors.result index 01d0f279a93a..5dade7600928 100644 --- a/mysql-test/suite/rpl_encryption/r/rpl_binlog_errors.result +++ b/mysql-test/suite/rpl_encryption/r/rpl_binlog_errors.result @@ -29,8 +29,8 @@ include/rpl_restart_server.inc [server_number=1] RESET MASTER; ###################### TEST #3 CREATE TABLE t1 (a INT); -CREATE TABLE t2 (a VARCHAR(16384)) Engine=InnoDB; -CREATE TABLE t4 (a VARCHAR(16384)) Engine=MyISAM; +CREATE TABLE t2 (a VARCHAR(16383)) Engine=InnoDB; +CREATE TABLE t4 (a VARCHAR(16383)) Engine=MyISAM; INSERT INTO t1 VALUES (1); RESET MASTER; LOAD DATA INFILE 'MYSQLTEST_VARDIR/tmp/bug_46166.data' INTO TABLE t2; @@ -218,7 +218,7 @@ DROP TABLE t5; include/rpl_restart_server.inc [server_number=1] ###################### TEST #12 FLUSH LOGS; -ERROR HY000: Can't open file: 'master-bin' (errno: 2 - No such file or directory) +ERROR HY000: Error writing file 'master-bin' (errno: 2 - No such file or directory) RESET MASTER; CREATE TABLE t5 (a INT); INSERT INTO t4 VALUES ('bbbbb'); @@ -245,12 +245,8 @@ SET @old_debug=@@global.debug; include/stop_slave.inc SET GLOBAL debug="+d,error_unique_log_filename"; START SLAVE io_thread; -include/wait_for_slave_io_error.inc [errno=1595] -Warnings: -Warning 3090 Changing sql mode 'NO_AUTO_CREATE_USER' is deprecated. It will be removed in a future release. +include/wait_for_slave_io_error.inc [errno=13122] Last_IO_Error = 'Relay log write failure: could not queue event from master' -Warnings: -Warning 3090 Changing sql mode 'NO_AUTO_CREATE_USER' is deprecated. It will be removed in a future release. SET GLOBAL debug="-d,error_unique_log_filename"; SET GLOBAL debug=@old_debug; include/rpl_restart_server.inc [server_number=2] @@ -260,12 +256,8 @@ SET @old_debug=@@global.debug; include/stop_slave.inc SET GLOBAL debug="+d,fault_injection_new_file_rotate_event"; START SLAVE io_thread; -include/wait_for_slave_io_error.inc [errno=1595] -Warnings: -Warning 3090 Changing sql mode 'NO_AUTO_CREATE_USER' is deprecated. It will be removed in a future release. +include/wait_for_slave_io_error.inc [errno=13122] Last_IO_Error = 'Relay log write failure: could not queue event from master' -Warnings: -Warning 3090 Changing sql mode 'NO_AUTO_CREATE_USER' is deprecated. It will be removed in a future release. SET GLOBAL debug="-d,fault_injection_new_file_rotate_event"; SET GLOBAL debug=@old_debug; include/rpl_restart_server.inc [server_number=2] @@ -275,12 +267,8 @@ SET @old_debug=@@global.debug; include/stop_slave.inc SET GLOBAL debug="+d,fault_injection_registering_index"; START SLAVE io_thread; -include/wait_for_slave_io_error.inc [errno=1595] -Warnings: -Warning 3090 Changing sql mode 'NO_AUTO_CREATE_USER' is deprecated. It will be removed in a future release. +include/wait_for_slave_io_error.inc [errno=13122] Last_IO_Error = 'Relay log write failure: could not queue event from master' -Warnings: -Warning 3090 Changing sql mode 'NO_AUTO_CREATE_USER' is deprecated. It will be removed in a future release. SET GLOBAL debug="-d,fault_injection_registering_index"; SET GLOBAL debug=@old_debug; include/rpl_restart_server.inc [server_number=2] @@ -290,12 +278,8 @@ SET @old_debug=@@global.debug; include/stop_slave.inc SET GLOBAL debug="+d,fault_injection_openning_index"; START SLAVE io_thread; -include/wait_for_slave_io_error.inc [errno=1595] -Warnings: -Warning 3090 Changing sql mode 'NO_AUTO_CREATE_USER' is deprecated. It will be removed in a future release. +include/wait_for_slave_io_error.inc [errno=13122] Last_IO_Error = 'Relay log write failure: could not queue event from master' -Warnings: -Warning 3090 Changing sql mode 'NO_AUTO_CREATE_USER' is deprecated. It will be removed in a future release. SET GLOBAL debug="-d,fault_injection_openning_index"; SET GLOBAL debug=@old_debug; include/rpl_restart_server.inc [server_number=2] diff --git a/mysql-test/suite/rpl_encryption/r/rpl_gtid_temp_table.result b/mysql-test/suite/rpl_encryption/r/rpl_gtid_temp_table.result index 1eb6e6d55a2c..fdf8e94de7a6 100644 --- a/mysql-test/suite/rpl_encryption/r/rpl_gtid_temp_table.result +++ b/mysql-test/suite/rpl_encryption/r/rpl_gtid_temp_table.result @@ -16,24 +16,24 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; DROP TEMPORARY TABLE IF EXISTS tt1; RETURN 0; END; +Warnings: +Warning 3719 'utf8' is currently an alias for the character set UTF8MB3, but will be an alias for UTF8MB4 in a future release. Please consider using UTF8MB4 in order to be unambiguous. SELECT func1(); -ERROR HY000: Statement violates GTID consistency: CREATE TEMPORARY TABLE and DROP TEMPORARY TABLE can only be executed outside transactional context. These statements are also not allowed in a function or trigger because functions and triggers are also considered to be multi-statement transactions. +func1() +0 +Warnings: +Warning 3719 'utf8' is currently an alias for the character set UTF8MB3, but will be an alias for UTF8MB4 in a future release. Please consider using UTF8MB4 in order to be unambiguous. START TRANSACTION; SELECT func1(); -ERROR HY000: Statement violates GTID consistency: CREATE TEMPORARY TABLE and DROP TEMPORARY TABLE can only be executed outside transactional context. These statements are also not allowed in a function or trigger because functions and triggers are also considered to be multi-statement transactions. +func1() +0 COMMIT; INSERT INTO trans_table2 VALUES (func1()); -Got one of the listed errors UPDATE trans_table2 SET i=func1(); -Got one of the listed errors DELETE FROM trans_table2 WHERE i=func1(); -Got one of the listed errors INSERT INTO non_trans_table2 VALUES (func1()); -Got one of the listed errors UPDATE non_trans_table2 SET i=func1(); -Got one of the listed errors DELETE FROM non_trans_table2 WHERE i=func1(); -Got one of the listed errors DROP FUNCTION func1; CREATE TRIGGER trigger1 BEFORE INSERT ON trans_table2 FOR EACH ROW @@ -41,7 +41,6 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; DROP TEMPORARY TABLE IF EXISTS tt1; END; INSERT INTO trans_table2 VALUES (10); -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 AFTER INSERT ON trans_table2 FOR EACH ROW @@ -49,7 +48,6 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; DROP TEMPORARY TABLE IF EXISTS tt1; END; INSERT INTO trans_table2 VALUES (10); -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 BEFORE UPDATE ON trans_table2 FOR EACH ROW @@ -57,7 +55,6 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; DROP TEMPORARY TABLE IF EXISTS tt1; END; UPDATE trans_table2 SET i=12; -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 AFTER UPDATE ON trans_table2 FOR EACH ROW @@ -65,7 +62,6 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; DROP TEMPORARY TABLE IF EXISTS tt1; END; UPDATE trans_table2 SET i=12; -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 BEFORE DELETE ON trans_table2 FOR EACH ROW @@ -73,7 +69,6 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; DROP TEMPORARY TABLE IF EXISTS tt1; END; DELETE FROM trans_table2; -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 AFTER DELETE ON trans_table2 FOR EACH ROW @@ -81,7 +76,6 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; DROP TEMPORARY TABLE IF EXISTS tt1; END; DELETE FROM trans_table2; -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 BEFORE INSERT ON non_trans_table2 FOR EACH ROW @@ -89,7 +83,6 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; DROP TEMPORARY TABLE IF EXISTS tt1; END; INSERT INTO non_trans_table2 VALUES (10); -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 AFTER INSERT ON non_trans_table2 FOR EACH ROW @@ -97,7 +90,6 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; DROP TEMPORARY TABLE IF EXISTS tt1; END; INSERT INTO non_trans_table2 VALUES (10); -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 BEFORE UPDATE ON non_trans_table2 FOR EACH ROW @@ -105,7 +97,6 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; DROP TEMPORARY TABLE IF EXISTS tt1; END; UPDATE non_trans_table2 SET i=12; -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 AFTER UPDATE ON non_trans_table2 FOR EACH ROW @@ -113,7 +104,6 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; DROP TEMPORARY TABLE IF EXISTS tt1; END; UPDATE non_trans_table2 SET i=12; -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 BEFORE DELETE ON non_trans_table2 FOR EACH ROW @@ -121,7 +111,6 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; DROP TEMPORARY TABLE IF EXISTS tt1; END; DELETE FROM non_trans_table2; -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 AFTER DELETE ON non_trans_table2 FOR EACH ROW @@ -129,31 +118,30 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; DROP TEMPORARY TABLE IF EXISTS tt1; END; DELETE FROM non_trans_table2; -Got one of the listed errors DROP TRIGGER trigger1; CREATE FUNCTION func1 () RETURNS varchar(30) CHARSET utf8 BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=INNODB; DROP TEMPORARY TABLE IF EXISTS tt1; RETURN 0; END; +Warnings: +Warning 3719 'utf8' is currently an alias for the character set UTF8MB3, but will be an alias for UTF8MB4 in a future release. Please consider using UTF8MB4 in order to be unambiguous. SELECT func1(); -ERROR HY000: Statement violates GTID consistency: CREATE TEMPORARY TABLE and DROP TEMPORARY TABLE can only be executed outside transactional context. These statements are also not allowed in a function or trigger because functions and triggers are also considered to be multi-statement transactions. +func1() +0 +Warnings: +Warning 3719 'utf8' is currently an alias for the character set UTF8MB3, but will be an alias for UTF8MB4 in a future release. Please consider using UTF8MB4 in order to be unambiguous. START TRANSACTION; SELECT func1(); -ERROR HY000: Statement violates GTID consistency: CREATE TEMPORARY TABLE and DROP TEMPORARY TABLE can only be executed outside transactional context. These statements are also not allowed in a function or trigger because functions and triggers are also considered to be multi-statement transactions. +func1() +0 COMMIT; INSERT INTO trans_table2 VALUES (func1()); -Got one of the listed errors UPDATE trans_table2 SET i=func1(); -Got one of the listed errors DELETE FROM trans_table2 WHERE i=func1(); -Got one of the listed errors INSERT INTO non_trans_table2 VALUES (func1()); -Got one of the listed errors UPDATE non_trans_table2 SET i=func1(); -Got one of the listed errors DELETE FROM non_trans_table2 WHERE i=func1(); -Got one of the listed errors DROP FUNCTION func1; CREATE TRIGGER trigger1 BEFORE INSERT ON trans_table2 FOR EACH ROW @@ -161,7 +149,6 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=INNODB; DROP TEMPORARY TABLE IF EXISTS tt1; END; INSERT INTO trans_table2 VALUES (10); -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 AFTER INSERT ON trans_table2 FOR EACH ROW @@ -169,7 +156,6 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=INNODB; DROP TEMPORARY TABLE IF EXISTS tt1; END; INSERT INTO trans_table2 VALUES (10); -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 BEFORE UPDATE ON trans_table2 FOR EACH ROW @@ -177,7 +163,6 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=INNODB; DROP TEMPORARY TABLE IF EXISTS tt1; END; UPDATE trans_table2 SET i=12; -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 AFTER UPDATE ON trans_table2 FOR EACH ROW @@ -185,7 +170,6 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=INNODB; DROP TEMPORARY TABLE IF EXISTS tt1; END; UPDATE trans_table2 SET i=12; -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 BEFORE DELETE ON trans_table2 FOR EACH ROW @@ -193,7 +177,6 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=INNODB; DROP TEMPORARY TABLE IF EXISTS tt1; END; DELETE FROM trans_table2; -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 AFTER DELETE ON trans_table2 FOR EACH ROW @@ -201,7 +184,6 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=INNODB; DROP TEMPORARY TABLE IF EXISTS tt1; END; DELETE FROM trans_table2; -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 BEFORE INSERT ON non_trans_table2 FOR EACH ROW @@ -209,7 +191,6 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=INNODB; DROP TEMPORARY TABLE IF EXISTS tt1; END; INSERT INTO non_trans_table2 VALUES (10); -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 AFTER INSERT ON non_trans_table2 FOR EACH ROW @@ -217,7 +198,6 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=INNODB; DROP TEMPORARY TABLE IF EXISTS tt1; END; INSERT INTO non_trans_table2 VALUES (10); -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 BEFORE UPDATE ON non_trans_table2 FOR EACH ROW @@ -225,7 +205,6 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=INNODB; DROP TEMPORARY TABLE IF EXISTS tt1; END; UPDATE non_trans_table2 SET i=12; -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 AFTER UPDATE ON non_trans_table2 FOR EACH ROW @@ -233,7 +212,6 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=INNODB; DROP TEMPORARY TABLE IF EXISTS tt1; END; UPDATE non_trans_table2 SET i=12; -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 BEFORE DELETE ON non_trans_table2 FOR EACH ROW @@ -241,7 +219,6 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=INNODB; DROP TEMPORARY TABLE IF EXISTS tt1; END; DELETE FROM non_trans_table2; -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 AFTER DELETE ON non_trans_table2 FOR EACH ROW @@ -249,271 +226,30 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=INNODB; DROP TEMPORARY TABLE IF EXISTS tt1; END; DELETE FROM non_trans_table2; -Got one of the listed errors -DROP TRIGGER trigger1; -CREATE FUNCTION func1 () RETURNS varchar(30) CHARSET utf8 -BEGIN -CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; -RETURN 0; -END; -SELECT func1(); -ERROR HY000: Statement violates GTID consistency: CREATE TEMPORARY TABLE and DROP TEMPORARY TABLE can only be executed outside transactional context. These statements are also not allowed in a function or trigger because functions and triggers are also considered to be multi-statement transactions. -START TRANSACTION; -SELECT func1(); -ERROR HY000: Statement violates GTID consistency: CREATE TEMPORARY TABLE and DROP TEMPORARY TABLE can only be executed outside transactional context. These statements are also not allowed in a function or trigger because functions and triggers are also considered to be multi-statement transactions. -COMMIT; -INSERT INTO trans_table2 VALUES (func1()); -Got one of the listed errors -UPDATE trans_table2 SET i=func1(); -Got one of the listed errors -DELETE FROM trans_table2 WHERE i=func1(); -Got one of the listed errors -INSERT INTO non_trans_table2 VALUES (func1()); -Got one of the listed errors -UPDATE non_trans_table2 SET i=func1(); -Got one of the listed errors -DELETE FROM non_trans_table2 WHERE i=func1(); -Got one of the listed errors -DROP FUNCTION func1; -CREATE TRIGGER trigger1 -BEFORE INSERT ON trans_table2 FOR EACH ROW -BEGIN -CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; -END; -INSERT INTO trans_table2 VALUES (10); -Got one of the listed errors -DROP TRIGGER trigger1; -CREATE TRIGGER trigger1 -AFTER INSERT ON trans_table2 FOR EACH ROW -BEGIN -CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; -END; -INSERT INTO trans_table2 VALUES (10); -Got one of the listed errors -DROP TRIGGER trigger1; -CREATE TRIGGER trigger1 -BEFORE UPDATE ON trans_table2 FOR EACH ROW -BEGIN -CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; -END; -UPDATE trans_table2 SET i=12; -Got one of the listed errors -DROP TRIGGER trigger1; -CREATE TRIGGER trigger1 -AFTER UPDATE ON trans_table2 FOR EACH ROW -BEGIN -CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; -END; -UPDATE trans_table2 SET i=12; -Got one of the listed errors -DROP TRIGGER trigger1; -CREATE TRIGGER trigger1 -BEFORE DELETE ON trans_table2 FOR EACH ROW -BEGIN -CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; -END; -DELETE FROM trans_table2; -Got one of the listed errors -DROP TRIGGER trigger1; -CREATE TRIGGER trigger1 -AFTER DELETE ON trans_table2 FOR EACH ROW -BEGIN -CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; -END; -DELETE FROM trans_table2; -Got one of the listed errors -DROP TRIGGER trigger1; -CREATE TRIGGER trigger1 -BEFORE INSERT ON non_trans_table2 FOR EACH ROW -BEGIN -CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; -END; -INSERT INTO non_trans_table2 VALUES (10); -Got one of the listed errors -DROP TRIGGER trigger1; -CREATE TRIGGER trigger1 -AFTER INSERT ON non_trans_table2 FOR EACH ROW -BEGIN -CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; -END; -INSERT INTO non_trans_table2 VALUES (10); -Got one of the listed errors -DROP TRIGGER trigger1; -CREATE TRIGGER trigger1 -BEFORE UPDATE ON non_trans_table2 FOR EACH ROW -BEGIN -CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; -END; -UPDATE non_trans_table2 SET i=12; -Got one of the listed errors -DROP TRIGGER trigger1; -CREATE TRIGGER trigger1 -AFTER UPDATE ON non_trans_table2 FOR EACH ROW -BEGIN -CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; -END; -UPDATE non_trans_table2 SET i=12; -Got one of the listed errors -DROP TRIGGER trigger1; -CREATE TRIGGER trigger1 -BEFORE DELETE ON non_trans_table2 FOR EACH ROW -BEGIN -CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; -END; -DELETE FROM non_trans_table2; -Got one of the listed errors -DROP TRIGGER trigger1; -CREATE TRIGGER trigger1 -AFTER DELETE ON non_trans_table2 FOR EACH ROW -BEGIN -CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; -END; -DELETE FROM non_trans_table2; -Got one of the listed errors -DROP TRIGGER trigger1; -CREATE FUNCTION func1 () RETURNS varchar(30) CHARSET utf8 -BEGIN -CREATE TEMPORARY TABLE tt1(i INT) ENGINE=INNODB; -RETURN 0; -END; -SELECT func1(); -ERROR HY000: Statement violates GTID consistency: CREATE TEMPORARY TABLE and DROP TEMPORARY TABLE can only be executed outside transactional context. These statements are also not allowed in a function or trigger because functions and triggers are also considered to be multi-statement transactions. -START TRANSACTION; -SELECT func1(); -ERROR HY000: Statement violates GTID consistency: CREATE TEMPORARY TABLE and DROP TEMPORARY TABLE can only be executed outside transactional context. These statements are also not allowed in a function or trigger because functions and triggers are also considered to be multi-statement transactions. -COMMIT; -INSERT INTO trans_table2 VALUES (func1()); -Got one of the listed errors -UPDATE trans_table2 SET i=func1(); -Got one of the listed errors -DELETE FROM trans_table2 WHERE i=func1(); -Got one of the listed errors -INSERT INTO non_trans_table2 VALUES (func1()); -Got one of the listed errors -UPDATE non_trans_table2 SET i=func1(); -Got one of the listed errors -DELETE FROM non_trans_table2 WHERE i=func1(); -Got one of the listed errors -DROP FUNCTION func1; -CREATE TRIGGER trigger1 -BEFORE INSERT ON trans_table2 FOR EACH ROW -BEGIN -CREATE TEMPORARY TABLE tt1(i INT) ENGINE=INNODB; -END; -INSERT INTO trans_table2 VALUES (10); -Got one of the listed errors -DROP TRIGGER trigger1; -CREATE TRIGGER trigger1 -AFTER INSERT ON trans_table2 FOR EACH ROW -BEGIN -CREATE TEMPORARY TABLE tt1(i INT) ENGINE=INNODB; -END; -INSERT INTO trans_table2 VALUES (10); -Got one of the listed errors -DROP TRIGGER trigger1; -CREATE TRIGGER trigger1 -BEFORE UPDATE ON trans_table2 FOR EACH ROW -BEGIN -CREATE TEMPORARY TABLE tt1(i INT) ENGINE=INNODB; -END; -UPDATE trans_table2 SET i=12; -Got one of the listed errors -DROP TRIGGER trigger1; -CREATE TRIGGER trigger1 -AFTER UPDATE ON trans_table2 FOR EACH ROW -BEGIN -CREATE TEMPORARY TABLE tt1(i INT) ENGINE=INNODB; -END; -UPDATE trans_table2 SET i=12; -Got one of the listed errors -DROP TRIGGER trigger1; -CREATE TRIGGER trigger1 -BEFORE DELETE ON trans_table2 FOR EACH ROW -BEGIN -CREATE TEMPORARY TABLE tt1(i INT) ENGINE=INNODB; -END; -DELETE FROM trans_table2; -Got one of the listed errors -DROP TRIGGER trigger1; -CREATE TRIGGER trigger1 -AFTER DELETE ON trans_table2 FOR EACH ROW -BEGIN -CREATE TEMPORARY TABLE tt1(i INT) ENGINE=INNODB; -END; -DELETE FROM trans_table2; -Got one of the listed errors -DROP TRIGGER trigger1; -CREATE TRIGGER trigger1 -BEFORE INSERT ON non_trans_table2 FOR EACH ROW -BEGIN -CREATE TEMPORARY TABLE tt1(i INT) ENGINE=INNODB; -END; -INSERT INTO non_trans_table2 VALUES (10); -Got one of the listed errors -DROP TRIGGER trigger1; -CREATE TRIGGER trigger1 -AFTER INSERT ON non_trans_table2 FOR EACH ROW -BEGIN -CREATE TEMPORARY TABLE tt1(i INT) ENGINE=INNODB; -END; -INSERT INTO non_trans_table2 VALUES (10); -Got one of the listed errors -DROP TRIGGER trigger1; -CREATE TRIGGER trigger1 -BEFORE UPDATE ON non_trans_table2 FOR EACH ROW -BEGIN -CREATE TEMPORARY TABLE tt1(i INT) ENGINE=INNODB; -END; -UPDATE non_trans_table2 SET i=12; -Got one of the listed errors -DROP TRIGGER trigger1; -CREATE TRIGGER trigger1 -AFTER UPDATE ON non_trans_table2 FOR EACH ROW -BEGIN -CREATE TEMPORARY TABLE tt1(i INT) ENGINE=INNODB; -END; -UPDATE non_trans_table2 SET i=12; -Got one of the listed errors -DROP TRIGGER trigger1; -CREATE TRIGGER trigger1 -BEFORE DELETE ON non_trans_table2 FOR EACH ROW -BEGIN -CREATE TEMPORARY TABLE tt1(i INT) ENGINE=INNODB; -END; -DELETE FROM non_trans_table2; -Got one of the listed errors -DROP TRIGGER trigger1; -CREATE TRIGGER trigger1 -AFTER DELETE ON non_trans_table2 FOR EACH ROW -BEGIN -CREATE TEMPORARY TABLE tt1(i INT) ENGINE=INNODB; -END; -DELETE FROM non_trans_table2; -Got one of the listed errors DROP TRIGGER trigger1; CREATE FUNCTION func1 () RETURNS varchar(30) CHARSET utf8 BEGIN DROP TEMPORARY TABLE IF EXISTS tt1; RETURN 0; END; +Warnings: +Warning 3719 'utf8' is currently an alias for the character set UTF8MB3, but will be an alias for UTF8MB4 in a future release. Please consider using UTF8MB4 in order to be unambiguous. SELECT func1(); -ERROR HY000: Statement violates GTID consistency: CREATE TEMPORARY TABLE and DROP TEMPORARY TABLE can only be executed outside transactional context. These statements are also not allowed in a function or trigger because functions and triggers are also considered to be multi-statement transactions. +func1() +0 +Warnings: +Warning 3719 'utf8' is currently an alias for the character set UTF8MB3, but will be an alias for UTF8MB4 in a future release. Please consider using UTF8MB4 in order to be unambiguous. START TRANSACTION; SELECT func1(); -ERROR HY000: Statement violates GTID consistency: CREATE TEMPORARY TABLE and DROP TEMPORARY TABLE can only be executed outside transactional context. These statements are also not allowed in a function or trigger because functions and triggers are also considered to be multi-statement transactions. +func1() +0 COMMIT; INSERT INTO trans_table2 VALUES (func1()); -Got one of the listed errors UPDATE trans_table2 SET i=func1(); -Got one of the listed errors DELETE FROM trans_table2 WHERE i=func1(); -Got one of the listed errors INSERT INTO non_trans_table2 VALUES (func1()); -Got one of the listed errors UPDATE non_trans_table2 SET i=func1(); -Got one of the listed errors DELETE FROM non_trans_table2 WHERE i=func1(); -Got one of the listed errors DROP FUNCTION func1; CREATE TRIGGER trigger1 BEFORE INSERT ON trans_table2 FOR EACH ROW @@ -521,7 +257,6 @@ BEGIN DROP TEMPORARY TABLE IF EXISTS tt1; END; INSERT INTO trans_table2 VALUES (10); -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 AFTER INSERT ON trans_table2 FOR EACH ROW @@ -529,7 +264,6 @@ BEGIN DROP TEMPORARY TABLE IF EXISTS tt1; END; INSERT INTO trans_table2 VALUES (10); -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 BEFORE UPDATE ON trans_table2 FOR EACH ROW @@ -537,7 +271,6 @@ BEGIN DROP TEMPORARY TABLE IF EXISTS tt1; END; UPDATE trans_table2 SET i=12; -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 AFTER UPDATE ON trans_table2 FOR EACH ROW @@ -545,7 +278,6 @@ BEGIN DROP TEMPORARY TABLE IF EXISTS tt1; END; UPDATE trans_table2 SET i=12; -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 BEFORE DELETE ON trans_table2 FOR EACH ROW @@ -553,7 +285,6 @@ BEGIN DROP TEMPORARY TABLE IF EXISTS tt1; END; DELETE FROM trans_table2; -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 AFTER DELETE ON trans_table2 FOR EACH ROW @@ -561,7 +292,6 @@ BEGIN DROP TEMPORARY TABLE IF EXISTS tt1; END; DELETE FROM trans_table2; -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 BEFORE INSERT ON non_trans_table2 FOR EACH ROW @@ -569,7 +299,6 @@ BEGIN DROP TEMPORARY TABLE IF EXISTS tt1; END; INSERT INTO non_trans_table2 VALUES (10); -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 AFTER INSERT ON non_trans_table2 FOR EACH ROW @@ -577,7 +306,6 @@ BEGIN DROP TEMPORARY TABLE IF EXISTS tt1; END; INSERT INTO non_trans_table2 VALUES (10); -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 BEFORE UPDATE ON non_trans_table2 FOR EACH ROW @@ -585,7 +313,6 @@ BEGIN DROP TEMPORARY TABLE IF EXISTS tt1; END; UPDATE non_trans_table2 SET i=12; -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 AFTER UPDATE ON non_trans_table2 FOR EACH ROW @@ -593,7 +320,6 @@ BEGIN DROP TEMPORARY TABLE IF EXISTS tt1; END; UPDATE non_trans_table2 SET i=12; -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 BEFORE DELETE ON non_trans_table2 FOR EACH ROW @@ -601,7 +327,6 @@ BEGIN DROP TEMPORARY TABLE IF EXISTS tt1; END; DELETE FROM non_trans_table2; -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 AFTER DELETE ON non_trans_table2 FOR EACH ROW @@ -609,31 +334,30 @@ BEGIN DROP TEMPORARY TABLE IF EXISTS tt1; END; DELETE FROM non_trans_table2; -Got one of the listed errors DROP TRIGGER trigger1; CREATE FUNCTION func1 () RETURNS varchar(30) CHARSET utf8 BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; CREATE TEMPORARY TABLE tt2(i INT) ENGINE=Innodb; DROP TEMPORARY TABLE IF EXISTS tt1; DROP TEMPORARY TABLE IF EXISTS tt2; RETURN 0; END; +Warnings: +Warning 3719 'utf8' is currently an alias for the character set UTF8MB3, but will be an alias for UTF8MB4 in a future release. Please consider using UTF8MB4 in order to be unambiguous. SELECT func1(); -ERROR HY000: Statement violates GTID consistency: CREATE TEMPORARY TABLE and DROP TEMPORARY TABLE can only be executed outside transactional context. These statements are also not allowed in a function or trigger because functions and triggers are also considered to be multi-statement transactions. +func1() +0 +Warnings: +Warning 3719 'utf8' is currently an alias for the character set UTF8MB3, but will be an alias for UTF8MB4 in a future release. Please consider using UTF8MB4 in order to be unambiguous. START TRANSACTION; SELECT func1(); -ERROR HY000: Statement violates GTID consistency: CREATE TEMPORARY TABLE and DROP TEMPORARY TABLE can only be executed outside transactional context. These statements are also not allowed in a function or trigger because functions and triggers are also considered to be multi-statement transactions. +func1() +0 COMMIT; INSERT INTO trans_table2 VALUES (func1()); -Got one of the listed errors UPDATE trans_table2 SET i=func1(); -Got one of the listed errors DELETE FROM trans_table2 WHERE i=func1(); -Got one of the listed errors INSERT INTO non_trans_table2 VALUES (func1()); -Got one of the listed errors UPDATE non_trans_table2 SET i=func1(); -Got one of the listed errors DELETE FROM non_trans_table2 WHERE i=func1(); -Got one of the listed errors DROP FUNCTION func1; CREATE TRIGGER trigger1 BEFORE INSERT ON trans_table2 FOR EACH ROW @@ -641,7 +365,6 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; CREATE TEMPORARY TABLE tt2(i INT) ENGINE=Innodb; DROP TEMPORARY TABLE IF EXISTS tt1; DROP TEMPORARY TABLE IF EXISTS tt2; END; INSERT INTO trans_table2 VALUES (10); -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 AFTER INSERT ON trans_table2 FOR EACH ROW @@ -649,7 +372,6 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; CREATE TEMPORARY TABLE tt2(i INT) ENGINE=Innodb; DROP TEMPORARY TABLE IF EXISTS tt1; DROP TEMPORARY TABLE IF EXISTS tt2; END; INSERT INTO trans_table2 VALUES (10); -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 BEFORE UPDATE ON trans_table2 FOR EACH ROW @@ -657,7 +379,6 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; CREATE TEMPORARY TABLE tt2(i INT) ENGINE=Innodb; DROP TEMPORARY TABLE IF EXISTS tt1; DROP TEMPORARY TABLE IF EXISTS tt2; END; UPDATE trans_table2 SET i=12; -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 AFTER UPDATE ON trans_table2 FOR EACH ROW @@ -665,7 +386,6 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; CREATE TEMPORARY TABLE tt2(i INT) ENGINE=Innodb; DROP TEMPORARY TABLE IF EXISTS tt1; DROP TEMPORARY TABLE IF EXISTS tt2; END; UPDATE trans_table2 SET i=12; -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 BEFORE DELETE ON trans_table2 FOR EACH ROW @@ -673,7 +393,6 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; CREATE TEMPORARY TABLE tt2(i INT) ENGINE=Innodb; DROP TEMPORARY TABLE IF EXISTS tt1; DROP TEMPORARY TABLE IF EXISTS tt2; END; DELETE FROM trans_table2; -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 AFTER DELETE ON trans_table2 FOR EACH ROW @@ -681,7 +400,6 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; CREATE TEMPORARY TABLE tt2(i INT) ENGINE=Innodb; DROP TEMPORARY TABLE IF EXISTS tt1; DROP TEMPORARY TABLE IF EXISTS tt2; END; DELETE FROM trans_table2; -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 BEFORE INSERT ON non_trans_table2 FOR EACH ROW @@ -689,7 +407,6 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; CREATE TEMPORARY TABLE tt2(i INT) ENGINE=Innodb; DROP TEMPORARY TABLE IF EXISTS tt1; DROP TEMPORARY TABLE IF EXISTS tt2; END; INSERT INTO non_trans_table2 VALUES (10); -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 AFTER INSERT ON non_trans_table2 FOR EACH ROW @@ -697,7 +414,6 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; CREATE TEMPORARY TABLE tt2(i INT) ENGINE=Innodb; DROP TEMPORARY TABLE IF EXISTS tt1; DROP TEMPORARY TABLE IF EXISTS tt2; END; INSERT INTO non_trans_table2 VALUES (10); -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 BEFORE UPDATE ON non_trans_table2 FOR EACH ROW @@ -705,7 +421,6 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; CREATE TEMPORARY TABLE tt2(i INT) ENGINE=Innodb; DROP TEMPORARY TABLE IF EXISTS tt1; DROP TEMPORARY TABLE IF EXISTS tt2; END; UPDATE non_trans_table2 SET i=12; -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 AFTER UPDATE ON non_trans_table2 FOR EACH ROW @@ -713,7 +428,6 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; CREATE TEMPORARY TABLE tt2(i INT) ENGINE=Innodb; DROP TEMPORARY TABLE IF EXISTS tt1; DROP TEMPORARY TABLE IF EXISTS tt2; END; UPDATE non_trans_table2 SET i=12; -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 BEFORE DELETE ON non_trans_table2 FOR EACH ROW @@ -721,7 +435,6 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; CREATE TEMPORARY TABLE tt2(i INT) ENGINE=Innodb; DROP TEMPORARY TABLE IF EXISTS tt1; DROP TEMPORARY TABLE IF EXISTS tt2; END; DELETE FROM non_trans_table2; -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 AFTER DELETE ON non_trans_table2 FOR EACH ROW @@ -729,31 +442,30 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; CREATE TEMPORARY TABLE tt2(i INT) ENGINE=Innodb; DROP TEMPORARY TABLE IF EXISTS tt1; DROP TEMPORARY TABLE IF EXISTS tt2; END; DELETE FROM non_trans_table2; -Got one of the listed errors DROP TRIGGER trigger1; CREATE FUNCTION func1 () RETURNS varchar(30) CHARSET utf8 BEGIN INSERT INTO trans_table1 VALUES (12); CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; DROP TEMPORARY TABLE IF EXISTS tt1; RETURN 0; END; +Warnings: +Warning 3719 'utf8' is currently an alias for the character set UTF8MB3, but will be an alias for UTF8MB4 in a future release. Please consider using UTF8MB4 in order to be unambiguous. SELECT func1(); -ERROR HY000: Statement violates GTID consistency: CREATE TEMPORARY TABLE and DROP TEMPORARY TABLE can only be executed outside transactional context. These statements are also not allowed in a function or trigger because functions and triggers are also considered to be multi-statement transactions. +func1() +0 +Warnings: +Warning 3719 'utf8' is currently an alias for the character set UTF8MB3, but will be an alias for UTF8MB4 in a future release. Please consider using UTF8MB4 in order to be unambiguous. START TRANSACTION; SELECT func1(); -ERROR HY000: Statement violates GTID consistency: CREATE TEMPORARY TABLE and DROP TEMPORARY TABLE can only be executed outside transactional context. These statements are also not allowed in a function or trigger because functions and triggers are also considered to be multi-statement transactions. +func1() +0 COMMIT; INSERT INTO trans_table2 VALUES (func1()); -Got one of the listed errors UPDATE trans_table2 SET i=func1(); -Got one of the listed errors DELETE FROM trans_table2 WHERE i=func1(); -Got one of the listed errors INSERT INTO non_trans_table2 VALUES (func1()); -Got one of the listed errors UPDATE non_trans_table2 SET i=func1(); -Got one of the listed errors DELETE FROM non_trans_table2 WHERE i=func1(); -Got one of the listed errors DROP FUNCTION func1; CREATE TRIGGER trigger1 BEFORE INSERT ON trans_table2 FOR EACH ROW @@ -761,7 +473,6 @@ BEGIN INSERT INTO trans_table1 VALUES (12); CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; DROP TEMPORARY TABLE IF EXISTS tt1; END; INSERT INTO trans_table2 VALUES (10); -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 AFTER INSERT ON trans_table2 FOR EACH ROW @@ -769,7 +480,6 @@ BEGIN INSERT INTO trans_table1 VALUES (12); CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; DROP TEMPORARY TABLE IF EXISTS tt1; END; INSERT INTO trans_table2 VALUES (10); -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 BEFORE UPDATE ON trans_table2 FOR EACH ROW @@ -777,7 +487,6 @@ BEGIN INSERT INTO trans_table1 VALUES (12); CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; DROP TEMPORARY TABLE IF EXISTS tt1; END; UPDATE trans_table2 SET i=12; -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 AFTER UPDATE ON trans_table2 FOR EACH ROW @@ -785,7 +494,6 @@ BEGIN INSERT INTO trans_table1 VALUES (12); CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; DROP TEMPORARY TABLE IF EXISTS tt1; END; UPDATE trans_table2 SET i=12; -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 BEFORE DELETE ON trans_table2 FOR EACH ROW @@ -793,7 +501,6 @@ BEGIN INSERT INTO trans_table1 VALUES (12); CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; DROP TEMPORARY TABLE IF EXISTS tt1; END; DELETE FROM trans_table2; -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 AFTER DELETE ON trans_table2 FOR EACH ROW @@ -801,7 +508,6 @@ BEGIN INSERT INTO trans_table1 VALUES (12); CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; DROP TEMPORARY TABLE IF EXISTS tt1; END; DELETE FROM trans_table2; -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 BEFORE INSERT ON non_trans_table2 FOR EACH ROW @@ -809,7 +515,6 @@ BEGIN INSERT INTO trans_table1 VALUES (12); CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; DROP TEMPORARY TABLE IF EXISTS tt1; END; INSERT INTO non_trans_table2 VALUES (10); -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 AFTER INSERT ON non_trans_table2 FOR EACH ROW @@ -817,7 +522,6 @@ BEGIN INSERT INTO trans_table1 VALUES (12); CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; DROP TEMPORARY TABLE IF EXISTS tt1; END; INSERT INTO non_trans_table2 VALUES (10); -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 BEFORE UPDATE ON non_trans_table2 FOR EACH ROW @@ -825,7 +529,6 @@ BEGIN INSERT INTO trans_table1 VALUES (12); CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; DROP TEMPORARY TABLE IF EXISTS tt1; END; UPDATE non_trans_table2 SET i=12; -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 AFTER UPDATE ON non_trans_table2 FOR EACH ROW @@ -833,7 +536,6 @@ BEGIN INSERT INTO trans_table1 VALUES (12); CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; DROP TEMPORARY TABLE IF EXISTS tt1; END; UPDATE non_trans_table2 SET i=12; -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 BEFORE DELETE ON non_trans_table2 FOR EACH ROW @@ -841,7 +543,6 @@ BEGIN INSERT INTO trans_table1 VALUES (12); CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; DROP TEMPORARY TABLE IF EXISTS tt1; END; DELETE FROM non_trans_table2; -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 AFTER DELETE ON non_trans_table2 FOR EACH ROW @@ -849,31 +550,30 @@ BEGIN INSERT INTO trans_table1 VALUES (12); CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; DROP TEMPORARY TABLE IF EXISTS tt1; END; DELETE FROM non_trans_table2; -Got one of the listed errors DROP TRIGGER trigger1; CREATE FUNCTION func1 () RETURNS varchar(30) CHARSET utf8 BEGIN INSERT INTO non_trans_table1 VALUES (12); CREATE TEMPORARY TABLE tt1(i INT) ENGINE=INNODB; DROP TEMPORARY TABLE IF EXISTS tt1; RETURN 0; END; +Warnings: +Warning 3719 'utf8' is currently an alias for the character set UTF8MB3, but will be an alias for UTF8MB4 in a future release. Please consider using UTF8MB4 in order to be unambiguous. SELECT func1(); -ERROR HY000: Statement violates GTID consistency: CREATE TEMPORARY TABLE and DROP TEMPORARY TABLE can only be executed outside transactional context. These statements are also not allowed in a function or trigger because functions and triggers are also considered to be multi-statement transactions. +func1() +0 +Warnings: +Warning 3719 'utf8' is currently an alias for the character set UTF8MB3, but will be an alias for UTF8MB4 in a future release. Please consider using UTF8MB4 in order to be unambiguous. START TRANSACTION; SELECT func1(); -ERROR HY000: Statement violates GTID consistency: CREATE TEMPORARY TABLE and DROP TEMPORARY TABLE can only be executed outside transactional context. These statements are also not allowed in a function or trigger because functions and triggers are also considered to be multi-statement transactions. +func1() +0 COMMIT; INSERT INTO trans_table2 VALUES (func1()); -Got one of the listed errors UPDATE trans_table2 SET i=func1(); -Got one of the listed errors DELETE FROM trans_table2 WHERE i=func1(); -Got one of the listed errors INSERT INTO non_trans_table2 VALUES (func1()); -Got one of the listed errors UPDATE non_trans_table2 SET i=func1(); -Got one of the listed errors DELETE FROM non_trans_table2 WHERE i=func1(); -Got one of the listed errors DROP FUNCTION func1; CREATE TRIGGER trigger1 BEFORE INSERT ON trans_table2 FOR EACH ROW @@ -881,7 +581,6 @@ BEGIN INSERT INTO non_trans_table1 VALUES (12); CREATE TEMPORARY TABLE tt1(i INT) ENGINE=INNODB; DROP TEMPORARY TABLE IF EXISTS tt1; END; INSERT INTO trans_table2 VALUES (10); -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 AFTER INSERT ON trans_table2 FOR EACH ROW @@ -889,7 +588,6 @@ BEGIN INSERT INTO non_trans_table1 VALUES (12); CREATE TEMPORARY TABLE tt1(i INT) ENGINE=INNODB; DROP TEMPORARY TABLE IF EXISTS tt1; END; INSERT INTO trans_table2 VALUES (10); -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 BEFORE UPDATE ON trans_table2 FOR EACH ROW @@ -897,7 +595,6 @@ BEGIN INSERT INTO non_trans_table1 VALUES (12); CREATE TEMPORARY TABLE tt1(i INT) ENGINE=INNODB; DROP TEMPORARY TABLE IF EXISTS tt1; END; UPDATE trans_table2 SET i=12; -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 AFTER UPDATE ON trans_table2 FOR EACH ROW @@ -905,7 +602,6 @@ BEGIN INSERT INTO non_trans_table1 VALUES (12); CREATE TEMPORARY TABLE tt1(i INT) ENGINE=INNODB; DROP TEMPORARY TABLE IF EXISTS tt1; END; UPDATE trans_table2 SET i=12; -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 BEFORE DELETE ON trans_table2 FOR EACH ROW @@ -913,7 +609,6 @@ BEGIN INSERT INTO non_trans_table1 VALUES (12); CREATE TEMPORARY TABLE tt1(i INT) ENGINE=INNODB; DROP TEMPORARY TABLE IF EXISTS tt1; END; DELETE FROM trans_table2; -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 AFTER DELETE ON trans_table2 FOR EACH ROW @@ -921,7 +616,6 @@ BEGIN INSERT INTO non_trans_table1 VALUES (12); CREATE TEMPORARY TABLE tt1(i INT) ENGINE=INNODB; DROP TEMPORARY TABLE IF EXISTS tt1; END; DELETE FROM trans_table2; -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 BEFORE INSERT ON non_trans_table2 FOR EACH ROW @@ -929,7 +623,6 @@ BEGIN INSERT INTO non_trans_table1 VALUES (12); CREATE TEMPORARY TABLE tt1(i INT) ENGINE=INNODB; DROP TEMPORARY TABLE IF EXISTS tt1; END; INSERT INTO non_trans_table2 VALUES (10); -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 AFTER INSERT ON non_trans_table2 FOR EACH ROW @@ -937,7 +630,6 @@ BEGIN INSERT INTO non_trans_table1 VALUES (12); CREATE TEMPORARY TABLE tt1(i INT) ENGINE=INNODB; DROP TEMPORARY TABLE IF EXISTS tt1; END; INSERT INTO non_trans_table2 VALUES (10); -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 BEFORE UPDATE ON non_trans_table2 FOR EACH ROW @@ -945,7 +637,6 @@ BEGIN INSERT INTO non_trans_table1 VALUES (12); CREATE TEMPORARY TABLE tt1(i INT) ENGINE=INNODB; DROP TEMPORARY TABLE IF EXISTS tt1; END; UPDATE non_trans_table2 SET i=12; -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 AFTER UPDATE ON non_trans_table2 FOR EACH ROW @@ -953,7 +644,6 @@ BEGIN INSERT INTO non_trans_table1 VALUES (12); CREATE TEMPORARY TABLE tt1(i INT) ENGINE=INNODB; DROP TEMPORARY TABLE IF EXISTS tt1; END; UPDATE non_trans_table2 SET i=12; -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 BEFORE DELETE ON non_trans_table2 FOR EACH ROW @@ -961,7 +651,6 @@ BEGIN INSERT INTO non_trans_table1 VALUES (12); CREATE TEMPORARY TABLE tt1(i INT) ENGINE=INNODB; DROP TEMPORARY TABLE IF EXISTS tt1; END; DELETE FROM non_trans_table2; -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 AFTER DELETE ON non_trans_table2 FOR EACH ROW @@ -969,31 +658,30 @@ BEGIN INSERT INTO non_trans_table1 VALUES (12); CREATE TEMPORARY TABLE tt1(i INT) ENGINE=INNODB; DROP TEMPORARY TABLE IF EXISTS tt1; END; DELETE FROM non_trans_table2; -Got one of the listed errors DROP TRIGGER trigger1; CREATE FUNCTION func1 () RETURNS varchar(30) CHARSET utf8 BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=INNODB; DROP TEMPORARY TABLE IF EXISTS tt1; INSERT INTO non_trans_table1 VALUES (12); RETURN 0; END; +Warnings: +Warning 3719 'utf8' is currently an alias for the character set UTF8MB3, but will be an alias for UTF8MB4 in a future release. Please consider using UTF8MB4 in order to be unambiguous. SELECT func1(); -ERROR HY000: Statement violates GTID consistency: CREATE TEMPORARY TABLE and DROP TEMPORARY TABLE can only be executed outside transactional context. These statements are also not allowed in a function or trigger because functions and triggers are also considered to be multi-statement transactions. +func1() +0 +Warnings: +Warning 3719 'utf8' is currently an alias for the character set UTF8MB3, but will be an alias for UTF8MB4 in a future release. Please consider using UTF8MB4 in order to be unambiguous. START TRANSACTION; SELECT func1(); -ERROR HY000: Statement violates GTID consistency: CREATE TEMPORARY TABLE and DROP TEMPORARY TABLE can only be executed outside transactional context. These statements are also not allowed in a function or trigger because functions and triggers are also considered to be multi-statement transactions. +func1() +0 COMMIT; INSERT INTO trans_table2 VALUES (func1()); -Got one of the listed errors UPDATE trans_table2 SET i=func1(); -Got one of the listed errors DELETE FROM trans_table2 WHERE i=func1(); -Got one of the listed errors INSERT INTO non_trans_table2 VALUES (func1()); -Got one of the listed errors UPDATE non_trans_table2 SET i=func1(); -Got one of the listed errors DELETE FROM non_trans_table2 WHERE i=func1(); -Got one of the listed errors DROP FUNCTION func1; CREATE TRIGGER trigger1 BEFORE INSERT ON trans_table2 FOR EACH ROW @@ -1001,7 +689,6 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=INNODB; DROP TEMPORARY TABLE IF EXISTS tt1; INSERT INTO non_trans_table1 VALUES (12); END; INSERT INTO trans_table2 VALUES (10); -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 AFTER INSERT ON trans_table2 FOR EACH ROW @@ -1009,7 +696,6 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=INNODB; DROP TEMPORARY TABLE IF EXISTS tt1; INSERT INTO non_trans_table1 VALUES (12); END; INSERT INTO trans_table2 VALUES (10); -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 BEFORE UPDATE ON trans_table2 FOR EACH ROW @@ -1017,7 +703,6 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=INNODB; DROP TEMPORARY TABLE IF EXISTS tt1; INSERT INTO non_trans_table1 VALUES (12); END; UPDATE trans_table2 SET i=12; -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 AFTER UPDATE ON trans_table2 FOR EACH ROW @@ -1025,7 +710,6 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=INNODB; DROP TEMPORARY TABLE IF EXISTS tt1; INSERT INTO non_trans_table1 VALUES (12); END; UPDATE trans_table2 SET i=12; -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 BEFORE DELETE ON trans_table2 FOR EACH ROW @@ -1033,7 +717,6 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=INNODB; DROP TEMPORARY TABLE IF EXISTS tt1; INSERT INTO non_trans_table1 VALUES (12); END; DELETE FROM trans_table2; -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 AFTER DELETE ON trans_table2 FOR EACH ROW @@ -1041,7 +724,6 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=INNODB; DROP TEMPORARY TABLE IF EXISTS tt1; INSERT INTO non_trans_table1 VALUES (12); END; DELETE FROM trans_table2; -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 BEFORE INSERT ON non_trans_table2 FOR EACH ROW @@ -1049,7 +731,6 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=INNODB; DROP TEMPORARY TABLE IF EXISTS tt1; INSERT INTO non_trans_table1 VALUES (12); END; INSERT INTO non_trans_table2 VALUES (10); -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 AFTER INSERT ON non_trans_table2 FOR EACH ROW @@ -1057,7 +738,6 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=INNODB; DROP TEMPORARY TABLE IF EXISTS tt1; INSERT INTO non_trans_table1 VALUES (12); END; INSERT INTO non_trans_table2 VALUES (10); -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 BEFORE UPDATE ON non_trans_table2 FOR EACH ROW @@ -1065,7 +745,6 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=INNODB; DROP TEMPORARY TABLE IF EXISTS tt1; INSERT INTO non_trans_table1 VALUES (12); END; UPDATE non_trans_table2 SET i=12; -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 AFTER UPDATE ON non_trans_table2 FOR EACH ROW @@ -1073,7 +752,6 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=INNODB; DROP TEMPORARY TABLE IF EXISTS tt1; INSERT INTO non_trans_table1 VALUES (12); END; UPDATE non_trans_table2 SET i=12; -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 BEFORE DELETE ON non_trans_table2 FOR EACH ROW @@ -1081,7 +759,6 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=INNODB; DROP TEMPORARY TABLE IF EXISTS tt1; INSERT INTO non_trans_table1 VALUES (12); END; DELETE FROM non_trans_table2; -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 AFTER DELETE ON non_trans_table2 FOR EACH ROW @@ -1089,31 +766,30 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=INNODB; DROP TEMPORARY TABLE IF EXISTS tt1; INSERT INTO non_trans_table1 VALUES (12); END; DELETE FROM non_trans_table2; -Got one of the listed errors DROP TRIGGER trigger1; CREATE FUNCTION func1 () RETURNS varchar(30) CHARSET utf8 BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; DROP TEMPORARY TABLE IF EXISTS tt1; INSERT INTO trans_table1 VALUES (12); RETURN 0; END; +Warnings: +Warning 3719 'utf8' is currently an alias for the character set UTF8MB3, but will be an alias for UTF8MB4 in a future release. Please consider using UTF8MB4 in order to be unambiguous. SELECT func1(); -ERROR HY000: Statement violates GTID consistency: CREATE TEMPORARY TABLE and DROP TEMPORARY TABLE can only be executed outside transactional context. These statements are also not allowed in a function or trigger because functions and triggers are also considered to be multi-statement transactions. +func1() +0 +Warnings: +Warning 3719 'utf8' is currently an alias for the character set UTF8MB3, but will be an alias for UTF8MB4 in a future release. Please consider using UTF8MB4 in order to be unambiguous. START TRANSACTION; SELECT func1(); -ERROR HY000: Statement violates GTID consistency: CREATE TEMPORARY TABLE and DROP TEMPORARY TABLE can only be executed outside transactional context. These statements are also not allowed in a function or trigger because functions and triggers are also considered to be multi-statement transactions. +func1() +0 COMMIT; INSERT INTO trans_table2 VALUES (func1()); -Got one of the listed errors UPDATE trans_table2 SET i=func1(); -Got one of the listed errors DELETE FROM trans_table2 WHERE i=func1(); -Got one of the listed errors INSERT INTO non_trans_table2 VALUES (func1()); -Got one of the listed errors UPDATE non_trans_table2 SET i=func1(); -Got one of the listed errors DELETE FROM non_trans_table2 WHERE i=func1(); -Got one of the listed errors DROP FUNCTION func1; CREATE TRIGGER trigger1 BEFORE INSERT ON trans_table2 FOR EACH ROW @@ -1121,7 +797,6 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; DROP TEMPORARY TABLE IF EXISTS tt1; INSERT INTO trans_table1 VALUES (12); END; INSERT INTO trans_table2 VALUES (10); -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 AFTER INSERT ON trans_table2 FOR EACH ROW @@ -1129,7 +804,6 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; DROP TEMPORARY TABLE IF EXISTS tt1; INSERT INTO trans_table1 VALUES (12); END; INSERT INTO trans_table2 VALUES (10); -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 BEFORE UPDATE ON trans_table2 FOR EACH ROW @@ -1137,7 +811,6 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; DROP TEMPORARY TABLE IF EXISTS tt1; INSERT INTO trans_table1 VALUES (12); END; UPDATE trans_table2 SET i=12; -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 AFTER UPDATE ON trans_table2 FOR EACH ROW @@ -1145,7 +818,6 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; DROP TEMPORARY TABLE IF EXISTS tt1; INSERT INTO trans_table1 VALUES (12); END; UPDATE trans_table2 SET i=12; -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 BEFORE DELETE ON trans_table2 FOR EACH ROW @@ -1153,7 +825,6 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; DROP TEMPORARY TABLE IF EXISTS tt1; INSERT INTO trans_table1 VALUES (12); END; DELETE FROM trans_table2; -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 AFTER DELETE ON trans_table2 FOR EACH ROW @@ -1161,7 +832,6 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; DROP TEMPORARY TABLE IF EXISTS tt1; INSERT INTO trans_table1 VALUES (12); END; DELETE FROM trans_table2; -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 BEFORE INSERT ON non_trans_table2 FOR EACH ROW @@ -1169,7 +839,6 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; DROP TEMPORARY TABLE IF EXISTS tt1; INSERT INTO trans_table1 VALUES (12); END; INSERT INTO non_trans_table2 VALUES (10); -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 AFTER INSERT ON non_trans_table2 FOR EACH ROW @@ -1177,7 +846,6 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; DROP TEMPORARY TABLE IF EXISTS tt1; INSERT INTO trans_table1 VALUES (12); END; INSERT INTO non_trans_table2 VALUES (10); -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 BEFORE UPDATE ON non_trans_table2 FOR EACH ROW @@ -1185,7 +853,6 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; DROP TEMPORARY TABLE IF EXISTS tt1; INSERT INTO trans_table1 VALUES (12); END; UPDATE non_trans_table2 SET i=12; -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 AFTER UPDATE ON non_trans_table2 FOR EACH ROW @@ -1193,7 +860,6 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; DROP TEMPORARY TABLE IF EXISTS tt1; INSERT INTO trans_table1 VALUES (12); END; UPDATE non_trans_table2 SET i=12; -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 BEFORE DELETE ON non_trans_table2 FOR EACH ROW @@ -1201,7 +867,6 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; DROP TEMPORARY TABLE IF EXISTS tt1; INSERT INTO trans_table1 VALUES (12); END; DELETE FROM non_trans_table2; -Got one of the listed errors DROP TRIGGER trigger1; CREATE TRIGGER trigger1 AFTER DELETE ON non_trans_table2 FOR EACH ROW @@ -1209,7 +874,6 @@ BEGIN CREATE TEMPORARY TABLE tt1(i INT) ENGINE=MyISAM; DROP TEMPORARY TABLE IF EXISTS tt1; INSERT INTO trans_table1 VALUES (12); END; DELETE FROM non_trans_table2; -Got one of the listed errors DROP TRIGGER trigger1; include/sync_slave_sql_with_master.inc [connection master] diff --git a/mysql-test/suite/rpl_encryption/r/rpl_gtid_validate_slave_gtids.result b/mysql-test/suite/rpl_encryption/r/rpl_gtid_validate_slave_gtids.result index 6608176ff53f..9dd266d63d7c 100644 --- a/mysql-test/suite/rpl_encryption/r/rpl_gtid_validate_slave_gtids.result +++ b/mysql-test/suite/rpl_encryption/r/rpl_gtid_validate_slave_gtids.result @@ -3,21 +3,20 @@ Warnings: Note #### Sending passwords in plain text without SSL/TLS is extremely insecure. Note #### Storing MySQL user name or password information in the master info repository is not secure and is therefore not recommended. Please consider using the USER and PASSWORD connection options for START SLAVE; see the 'START SLAVE Syntax' in the MySQL Manual for more information. [connection master] -SET GLOBAL GTID_PURGED= "master_uuid:1-2"; +SET GLOBAL GTID_PURGED= "master_uuid:1"; +SET GLOBAL GTID_PURGED= "+master_uuid:2"; +CALL mtr.add_suppression(".*Cannot replicate.*purged required binary logs.*"); CREATE TABLE t1(i INT); DROP TABLE t1; +SET GLOBAL GTID_PURGED = "master_uuid:1"; START SLAVE IO_THREAD; -include/wait_for_slave_io_error.inc [errno=1236] -Warnings: -Warning 3090 Changing sql mode 'NO_AUTO_CREATE_USER' is deprecated. It will be removed in a future release. -Last_IO_Error = 'Got fatal error 1236 from master when reading data from binary log: 'The slave is connecting using CHANGE MASTER TO MASTER_AUTO_POSITION = 1, but the master has purged binary logs containing GTIDs that the slave requires.'' -Warnings: -Warning 3090 Changing sql mode 'NO_AUTO_CREATE_USER' is deprecated. It will be removed in a future release. +include/wait_for_slave_io_error.inc [errno=13114] +Last_IO_Error = 'Got fatal error 1236 from master when reading data from binary log: 'Cannot replicate because the master purged required binary logs. Replicate the missing transactions from elsewhere, or provision a new slave from backup. Consider increasing the master's binary log expiration period. To find the missing transactions, see the master's error log or the manual for GTID_SUBTRACT.'' SET GLOBAL GTID_PURGED= "master_uuid:1-2"; include/start_slave.inc include/sync_slave_sql_with_master.inc include/assert.inc [Slave should be able to get GTID-3 and 4 now.] -call mtr.add_suppression(".*Master has purged binary logs containing GTIDs that the slave requires.*"); +include/assert_grep.inc [Found warning continaining lost GTIDs] include/rpl_reset.inc CREATE TABLE t1(i INT); DROP TABLE t1; @@ -28,12 +27,8 @@ Warnings: Warning 3129 Please do not modify the gtid_executed table. This is a mysql internal system table to store GTIDs for committed transactions. Modifying it can lead to an inconsistent GTID state. include/rpl_restart_server.inc [server_number=1] START SLAVE IO_THREAD; -include/wait_for_slave_io_error.inc [errno=1236] -Warnings: -Warning 3090 Changing sql mode 'NO_AUTO_CREATE_USER' is deprecated. It will be removed in a future release. +include/wait_for_slave_io_error.inc [errno=13114] Last_IO_Error = 'Got fatal error 1236 from master when reading data from binary log: 'Slave has more GTIDs than the master has, using the master's SERVER_UUID. This may indicate that the end of the binary log was truncated or that the last binary log file was lost, e.g., after a power or disk failure when sync_binlog != 1. The master may or may not have rolled back transactions that were already replica'' -Warnings: -Warning 3090 Changing sql mode 'NO_AUTO_CREATE_USER' is deprecated. It will be removed in a future release. call mtr.add_suppression(".*Slave has more GTIDs than the master has.*"); SET GLOBAL GTID_PURGED= "master_uuid:1-2"; include/start_slave.inc diff --git a/mysql-test/suite/rpl_encryption/r/rpl_semi_sync.result b/mysql-test/suite/rpl_encryption/r/rpl_semi_sync.result index a24332735fc0..83d4cb37713a 100644 --- a/mysql-test/suite/rpl_encryption/r/rpl_semi_sync.result +++ b/mysql-test/suite/rpl_encryption/r/rpl_semi_sync.result @@ -139,6 +139,7 @@ INSERT INTO t2 VALUES(22); COMMIT; DROP TABLE t2, t3; SET SESSION AUTOCOMMIT= 1; +FLUSH STATUS; include/sync_slave_sql_with_master.inc # # Test semi-sync master will switch OFF after one transaction @@ -156,7 +157,7 @@ Variable_name Value Rpl_semi_sync_master_no_tx 0 show status like 'Rpl_semi_sync_master_yes_tx'; Variable_name Value -Rpl_semi_sync_master_yes_tx 15 +Rpl_semi_sync_master_yes_tx 1 show status like 'Rpl_semi_sync_master_clients'; Variable_name Value Rpl_semi_sync_master_clients 0 @@ -171,7 +172,7 @@ Variable_name Value Rpl_semi_sync_master_no_tx 1 show status like 'Rpl_semi_sync_master_yes_tx'; Variable_name Value -Rpl_semi_sync_master_yes_tx 15 +Rpl_semi_sync_master_yes_tx 1 insert into t1 values (100); [ master status should be OFF ] show status like 'Rpl_semi_sync_master_status'; @@ -182,7 +183,7 @@ Variable_name Value Rpl_semi_sync_master_no_tx 12 show status like 'Rpl_semi_sync_master_yes_tx'; Variable_name Value -Rpl_semi_sync_master_yes_tx 15 +Rpl_semi_sync_master_yes_tx 1 # # Test semi-sync status on master will be ON again when slave catches up # @@ -215,7 +216,7 @@ Variable_name Value Rpl_semi_sync_master_no_tx 12 show status like 'Rpl_semi_sync_master_yes_tx'; Variable_name Value -Rpl_semi_sync_master_yes_tx 15 +Rpl_semi_sync_master_yes_tx 1 show status like 'Rpl_semi_sync_master_clients'; Variable_name Value Rpl_semi_sync_master_clients 1 @@ -235,7 +236,7 @@ Variable_name Value Rpl_semi_sync_master_no_tx 12 SHOW STATUS LIKE 'Rpl_semi_sync_master_yes_tx'; Variable_name Value -Rpl_semi_sync_master_yes_tx 16 +Rpl_semi_sync_master_yes_tx 2 FLUSH NO_WRITE_TO_BINLOG STATUS; [ Semi-sync master status variables after FLUSH STATUS ] SHOW STATUS LIKE 'Rpl_semi_sync_master_no_tx'; @@ -330,13 +331,11 @@ create user rpl@127.0.0.1 identified by 'rpl'; grant replication slave on *.* to rpl@127.0.0.1; flush privileges; set sql_log_bin=1; -SET @save_show_compatibility_56=@@global.show_compatibility_56; -SET @@global.show_compatibility_56=OFF; [connection slave] create user rpl@127.0.0.1 identified by 'rpl'; grant replication slave on *.* to rpl@127.0.0.1; flush privileges; -change master to master_user='rpl',master_password='rpl'; +change master to master_user='rpl',master_password='rpl', get_master_public_key=1; Warnings: Note #### Sending passwords in plain text without SSL/TLS is extremely insecure. Note #### Storing MySQL user name or password information in the master info repository is not secure and is therefore not recommended. Please consider using the USER and PASSWORD connection options for START SLAVE; see the 'START SLAVE Syntax' in the MySQL Manual for more information. @@ -345,7 +344,6 @@ show status like 'Rpl_semi_sync_slave_status'; Variable_name Value Rpl_semi_sync_slave_status ON [connection master] -SET @@global.show_compatibility_56=ON; [connection slave] include/stop_slave.inc [connection master] @@ -362,7 +360,6 @@ show status like 'Rpl_semi_sync_slave_status'; Variable_name Value Rpl_semi_sync_slave_status ON [connection master] -SET @@global.show_compatibility_56=@save_show_compatibility_56; show status like 'Rpl_semi_sync_master_status'; Variable_name Value Rpl_semi_sync_master_status ON @@ -485,7 +482,7 @@ Rpl_semi_sync_slave_status OFF # include/uninstall_semisync.inc include/stop_slave.inc -change master to master_user='root',master_password=''; +change master to master_user='root',master_password='', get_master_public_key=0; Warnings: Note #### Sending passwords in plain text without SSL/TLS is extremely insecure. Note #### Storing MySQL user name or password information in the master info repository is not secure and is therefore not recommended. Please consider using the USER and PASSWORD connection options for START SLAVE; see the 'START SLAVE Syntax' in the MySQL Manual for more information. diff --git a/mysql-test/suite/rpl_encryption/r/rpl_transaction_before_commit_failure.result b/mysql-test/suite/rpl_encryption/r/rpl_transaction_before_commit_failure.result index 0c0f67efe62d..d549a3005351 100644 --- a/mysql-test/suite/rpl_encryption/r/rpl_transaction_before_commit_failure.result +++ b/mysql-test/suite/rpl_encryption/r/rpl_transaction_before_commit_failure.result @@ -21,7 +21,7 @@ SET gtid_next='automatic'; SET @@GLOBAL.DEBUG= '+d,force_negative_certification_outcome'; SET gtid_next='aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa:2'; COMMIT; -ERROR HY000: Plugin instructed the server to rollback the current transaction. +ERROR 40000: Plugin instructed the server to rollback the current transaction. SET @@GLOBAL.DEBUG= @debug_saved; ROLLBACK; SET gtid_next='automatic'; diff --git a/mysql-test/suite/rpl_encryption/r/rpl_upgrade_slave_master_info.result b/mysql-test/suite/rpl_encryption/r/rpl_upgrade_slave_master_info.result index ded51243ed5d..62005d15a304 100644 --- a/mysql-test/suite/rpl_encryption/r/rpl_upgrade_slave_master_info.result +++ b/mysql-test/suite/rpl_encryption/r/rpl_upgrade_slave_master_info.result @@ -33,7 +33,23 @@ CREATE TABLE `slave_master_info` ( `Ssl_crlpath` TEXT CHARACTER SET utf8 COLLATE utf8_bin COMMENT 'The path used for Certificate Revocation List (CRL) files', `Enabled_auto_position` TINYINT(1) NOT NULL COMMENT 'Indicates whether GTIDs will be used to retrieve events from the master.', PRIMARY KEY (`Host`,`Port`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8 STATS_PERSISTENT=0 COMMENT='Master Information'; +) ENGINE=InnoDB DEFAULT CHARSET=utf8 STATS_PERSISTENT=0 COMMENT='Master Information' TABLESPACE=mysql; +Warnings: +Warning 3719 'utf8' is currently an alias for the character set UTF8MB3, but will be an alias for UTF8MB4 in a future release. Please consider using UTF8MB4 in order to be unambiguous. +Warning 3719 'utf8' is currently an alias for the character set UTF8MB3, but will be an alias for UTF8MB4 in a future release. Please consider using UTF8MB4 in order to be unambiguous. +Warning 3719 'utf8' is currently an alias for the character set UTF8MB3, but will be an alias for UTF8MB4 in a future release. Please consider using UTF8MB4 in order to be unambiguous. +Warning 3719 'utf8' is currently an alias for the character set UTF8MB3, but will be an alias for UTF8MB4 in a future release. Please consider using UTF8MB4 in order to be unambiguous. +Warning 3719 'utf8' is currently an alias for the character set UTF8MB3, but will be an alias for UTF8MB4 in a future release. Please consider using UTF8MB4 in order to be unambiguous. +Warning 3719 'utf8' is currently an alias for the character set UTF8MB3, but will be an alias for UTF8MB4 in a future release. Please consider using UTF8MB4 in order to be unambiguous. +Warning 3719 'utf8' is currently an alias for the character set UTF8MB3, but will be an alias for UTF8MB4 in a future release. Please consider using UTF8MB4 in order to be unambiguous. +Warning 3719 'utf8' is currently an alias for the character set UTF8MB3, but will be an alias for UTF8MB4 in a future release. Please consider using UTF8MB4 in order to be unambiguous. +Warning 3719 'utf8' is currently an alias for the character set UTF8MB3, but will be an alias for UTF8MB4 in a future release. Please consider using UTF8MB4 in order to be unambiguous. +Warning 3719 'utf8' is currently an alias for the character set UTF8MB3, but will be an alias for UTF8MB4 in a future release. Please consider using UTF8MB4 in order to be unambiguous. +Warning 3719 'utf8' is currently an alias for the character set UTF8MB3, but will be an alias for UTF8MB4 in a future release. Please consider using UTF8MB4 in order to be unambiguous. +Warning 3719 'utf8' is currently an alias for the character set UTF8MB3, but will be an alias for UTF8MB4 in a future release. Please consider using UTF8MB4 in order to be unambiguous. +Warning 3719 'utf8' is currently an alias for the character set UTF8MB3, but will be an alias for UTF8MB4 in a future release. Please consider using UTF8MB4 in order to be unambiguous. +Warning 3719 'utf8' is currently an alias for the character set UTF8MB3, but will be an alias for UTF8MB4 in a future release. Please consider using UTF8MB4 in order to be unambiguous. +Warning 3719 'utf8' is currently an alias for the character set UTF8MB3, but will be an alias for UTF8MB4 in a future release. Please consider using UTF8MB4 in order to be unambiguous. # Running mysql_upgrade to update slave_master_info table include/rpl_restart_server.inc [server_number=1] [connection server_1] @@ -67,6 +83,8 @@ include/sync_slave_sql.inc ALTER TABLE slave_master_info MODIFY Host CHAR(64) CHARACTER SET utf8 COLLATE utf8_bin NULL COMMENT 'The host name of the master.', ALTER COLUMN Channel_name DROP DEFAULT; +Warnings: +Warning 3719 'utf8' is currently an alias for the character set UTF8MB3, but will be an alias for UTF8MB4 in a future release. Please consider using UTF8MB4 in order to be unambiguous. include/stop_slave.inc CALL mtr.add_suppression('Info table has a problem with its key field.*slave_master_info'); CALL mtr.add_suppression('Error in checking mysql.slave_master_info repository info type of TABLE'); @@ -75,6 +93,8 @@ ALTER TABLE slave_master_info MODIFY Channel_name CHAR(64) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT 'The channel on which the slave is connected to a source. Used in Multisource Replication' AFTER Tls_version; +Warnings: +Warning 3719 'utf8' is currently an alias for the character set UTF8MB3, but will be an alias for UTF8MB4 in a future release. Please consider using UTF8MB4 in order to be unambiguous. RESET SLAVE ALL; ERROR HY000: Could not initialize master info structure; more error messages can be found in the MySQL error log include/assert_grep.inc [Found the expected error line in the error log.] @@ -86,6 +106,8 @@ ALTER TABLE slave_master_info MODIFY Channel_name CHAR(64) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT 'The channel on which the slave is connected to a source. Used in Multisource Replication' AFTER Enabled_auto_position; +Warnings: +Warning 3719 'utf8' is currently an alias for the character set UTF8MB3, but will be an alias for UTF8MB4 in a future release. Please consider using UTF8MB4 in order to be unambiguous. include/rpl_restart_server.inc [server_number=1] RESET SLAVE ALL; CHANGE MASTER TO MASTER_USER='root', MASTER_HOST='127.0.0.1', MASTER_PORT=MASTER_PORT, MASTER_LOG_FILE='FILE', MASTER_LOG_POS=POS; @@ -104,24 +126,26 @@ CHANGE MASTER TO MASTER_USER='root', MASTER_HOST='127.0.0.1', MASTER_PORT=MASTER Warnings: Note 1759 Sending passwords in plain text without SSL/TLS is extremely insecure. Note 1760 Storing MySQL user name or password information in the master info repository is not secure and is therefore not recommended. Please consider using the USER and PASSWORD connection options for START SLAVE; see the 'START SLAVE Syntax' in the MySQL Manual for more information. -include/start_slave.inc +include/start_slave.inc [FOR CHANNEL 'channel_1'] [connection server_2] INSERT INTO t1 VALUES (3); -include/sync_slave_sql_with_master.inc -include/stop_slave.inc +include/sync_slave_sql_with_master.inc [FOR CHANNEL 'channel_1'] +include/stop_slave.inc [FOR CHANNEL 'channel_1'] CHANGE MASTER TO MASTER_USER='root', MASTER_HOST='127.0.0.1', MASTER_PORT=MASTER_PORT, MASTER_LOG_FILE='FILE', MASTER_LOG_POS=POS FOR CHANNEL 'channel_2'; Warnings: Note 1759 Sending passwords in plain text without SSL/TLS is extremely insecure. Note 1760 Storing MySQL user name or password information in the master info repository is not secure and is therefore not recommended. Please consider using the USER and PASSWORD connection options for START SLAVE; see the 'START SLAVE Syntax' in the MySQL Manual for more information. -include/start_slave.inc +include/start_slave.inc [FOR CHANNEL 'channel_2'] [connection server_2] INSERT INTO t1 VALUES (4); -include/sync_slave_sql_with_master.inc -include/stop_slave.inc +include/sync_slave_sql_with_master.inc [FOR CHANNEL 'channel_2'] +include/stop_slave.inc [FOR CHANNEL 'channel_2'] ALTER TABLE slave_master_info MODIFY Channel_name CHAR(64) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT 'The channel on which the slave is connected to a source. Used in Multisource Replication' AFTER Tls_version; +Warnings: +Warning 3719 'utf8' is currently an alias for the character set UTF8MB3, but will be an alias for UTF8MB4 in a future release. Please consider using UTF8MB4 in order to be unambiguous. include/rpl_restart_server.inc [server_number=1] RESET SLAVE ALL; ERROR HY000: Slave is not configured or failed to initialize properly. You must at least set --server-id to enable either a master or a slave. Additional error messages can be found in the MySQL error log. @@ -130,6 +154,8 @@ ALTER TABLE slave_master_info MODIFY Channel_name CHAR(64) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT 'The channel on which the slave is connected to a source. Used in Multisource Replication' AFTER Enabled_auto_position; +Warnings: +Warning 3719 'utf8' is currently an alias for the character set UTF8MB3, but will be an alias for UTF8MB4 in a future release. Please consider using UTF8MB4 in order to be unambiguous. include/rpl_restart_server.inc [server_number=1] include/stop_slave.inc RESET SLAVE ALL; diff --git a/mysql-test/suite/rpl_encryption/t/encrypted_master_lost_key.test b/mysql-test/suite/rpl_encryption/t/encrypted_master_lost_key.test index bfe6eddd77d1..fb0d2cfc68db 100644 --- a/mysql-test/suite/rpl_encryption/t/encrypted_master_lost_key.test +++ b/mysql-test/suite/rpl_encryption/t/encrypted_master_lost_key.test @@ -104,6 +104,7 @@ UNINSTALL PLUGIN keyring_file; --let $rpl_server_parameters= --let $rpl_server_number= 1 --source include/rpl_restart_server.inc +--remove_file $MYSQL_TMP_DIR/master_lose_key --let $good_master_binlog= query_get_value(SHOW MASTER STATUS,File,1) @@ -134,10 +135,11 @@ INSERT INTO table3_to_encrypt SELECT NULL,NOW(),b FROM table3_to_encrypt; --disable_connect_log START SLAVE SQL_THREAD; START SLAVE IO_THREAD; ---let $slave_io_errno= 1236 +--let $slave_io_errno= 13114 # ER_SERVER_MASTER_FATAL_ERROR_READING_BINLOG --source include/wait_for_slave_io_error.inc --enable_connect_log +--source include/sync_slave_sql_with_io.inc # Here we should see only table1_to_encrypt and its contents, # because it was logged with the initial key --sorted_result @@ -154,7 +156,7 @@ SHOW TABLES; --connection server_2 --disable_connect_log ---source include/stop_slave.inc +--source include/stop_slave_sql.inc RESET SLAVE ALL; DROP DATABASE test; CREATE DATABASE test; diff --git a/mysql-test/suite/rpl_encryption/t/encrypted_master_switch_to_unencrypted.test b/mysql-test/suite/rpl_encryption/t/encrypted_master_switch_to_unencrypted.test index 9a61acef00bf..7edddf59ef6b 100644 --- a/mysql-test/suite/rpl_encryption/t/encrypted_master_switch_to_unencrypted.test +++ b/mysql-test/suite/rpl_encryption/t/encrypted_master_switch_to_unencrypted.test @@ -52,7 +52,6 @@ INSERT INTO table1_no_encryption SELECT NULL,NOW(),b FROM table1_no_encryption; --echo # Make sure that binary logs are not encrypted ---let SEARCH_ECHO=ALL --let SEARCH_RANGE = 500000 --let SEARCH_FILE= $master_datadir/master-bin.0* --let SEARCH_PATTERN= table1_no_encryption @@ -137,14 +136,14 @@ start slave; --connection slave call mtr.add_suppression("Slave I/O for channel '': Got fatal error 1236 from master when reading data from binary log: 'Could not decrypt binlog: encryption key error;"); ---let slave_io_errno=1236 +--let slave_io_errno=13114 # ER_SERVER_MASTER_FATAL_ERROR_READING_BINLOG --source include/wait_for_slave_io_error.inc --sorted_result SHOW TABLES; --disable_connect_log ---source include/stop_slave.inc +--source include/stop_slave_sql.inc --enable_connect_log RESET SLAVE; diff --git a/mysql-test/suite/rpl_encryption/t/encrypted_slave.test b/mysql-test/suite/rpl_encryption/t/encrypted_slave.test index 776079a0f7e4..93049f3d8bc8 100644 --- a/mysql-test/suite/rpl_encryption/t/encrypted_slave.test +++ b/mysql-test/suite/rpl_encryption/t/encrypted_slave.test @@ -43,7 +43,6 @@ --echo # Let's make sure that master binlog files are not encrypted by finding some --echo # plain texts that we know would appear in not encrypted binary log files. ---let SEARCH_ECHO=ALL --let SEARCH_FILE= $master_datadir/master-bin.0* --let SEARCH_PATTERN= _to_encrypt --source include/search_pattern.inc diff --git a/mysql-test/suite/rpl_encryption/t/encryption_combo.test b/mysql-test/suite/rpl_encryption/t/encryption_combo.test index 3bdd70904ced..6bfed8410ea1 100644 --- a/mysql-test/suite/rpl_encryption/t/encryption_combo.test +++ b/mysql-test/suite/rpl_encryption/t/encryption_combo.test @@ -50,7 +50,6 @@ INSERT INTO table1_no_encryption SELECT NULL,NOW(),b FROM table1_no_encryption; --let $master_datadir= `SELECT @@datadir` ---let SEARCH_ECHO=ALL --let SEARCH_FILE= $master_datadir/master-bin.0* --let SEARCH_PATTERN= table1_no_encryption --source include/search_pattern.inc diff --git a/mysql-test/suite/rpl_encryption/t/rpl_semi_sync-master.opt b/mysql-test/suite/rpl_encryption/t/rpl_semi_sync-master.opt index 746bb02524df..6fba8fb62047 100644 --- a/mysql-test/suite/rpl_encryption/t/rpl_semi_sync-master.opt +++ b/mysql-test/suite/rpl_encryption/t/rpl_semi_sync-master.opt @@ -1 +1 @@ -$SEMISYNC_PLUGIN_OPT --early-plugin-load=$KEYRING_PLUGIN_DIR/$KEYRING_PLUGIN --keyring_file_data=$MYSQL_TMP_DIR/mysecret_keyring --force-restart +$SEMISYNC_PLUGIN_OPT --keyring_file_data=$MYSQL_TMP_DIR/mysecret_keyring --force-restart diff --git a/mysql-test/suite/rpl_encryption/t/rpl_semi_sync.test b/mysql-test/suite/rpl_encryption/t/rpl_semi_sync.test index 2e0907cce303..8c57cfc00c7d 100644 --- a/mysql-test/suite/rpl_encryption/t/rpl_semi_sync.test +++ b/mysql-test/suite/rpl_encryption/t/rpl_semi_sync.test @@ -1 +1 @@ ---source suite/rpl/t/rpl_semi_sync.test +--source suite/rpl_nogtid/t/rpl_semi_sync.test diff --git a/mysql-test/suite/rpl_encryption/t/rpl_sync-slave.opt b/mysql-test/suite/rpl_encryption/t/rpl_sync-slave.opt index 69765185f7a2..f0338c7afe14 100644 --- a/mysql-test/suite/rpl_encryption/t/rpl_sync-slave.opt +++ b/mysql-test/suite/rpl_encryption/t/rpl_sync-slave.opt @@ -1 +1 @@ ---sync-relay-log-info=1 --relay-log-recovery=1 --default-storage-engine=MyISAM --innodb-file-per-table=0 +--sync-relay-log-info=1 --relay-log-recovery=1 --default-storage-engine=MyISAM --innodb-file-per-table=0 --master-info-repository=FILE diff --git a/mysql-test/suite/rpl_encryption/t/rpl_transaction_before_commit_failure-master.opt b/mysql-test/suite/rpl_encryption/t/rpl_transaction_before_commit_failure-master.opt index b0fe8fe5a48c..8ff35bf6691d 100644 --- a/mysql-test/suite/rpl_encryption/t/rpl_transaction_before_commit_failure-master.opt +++ b/mysql-test/suite/rpl_encryption/t/rpl_transaction_before_commit_failure-master.opt @@ -1,2 +1,2 @@ -$RPL_OBS_EXAMPLE_OPT --early-plugin-load=$KEYRING_PLUGIN_DIR/$KEYRING_PLUGIN --keyring_file_data=$MYSQL_TMP_DIR/keyring_1 --gtid-mode=ON --enforce-gtid-consistency=ON +$RPL_OBS_EXAMPLE_OPT --gtid-mode=ON --enforce-gtid-consistency=ON diff --git a/mysql-test/suite/rpl_encryption/t/rpl_transaction_before_commit_failure-slave.opt b/mysql-test/suite/rpl_encryption/t/rpl_transaction_before_commit_failure-slave.opt index 80ad92b124a0..8ff35bf6691d 100644 --- a/mysql-test/suite/rpl_encryption/t/rpl_transaction_before_commit_failure-slave.opt +++ b/mysql-test/suite/rpl_encryption/t/rpl_transaction_before_commit_failure-slave.opt @@ -1,2 +1,2 @@ -$RPL_OBS_EXAMPLE_OPT --early-plugin-load=$KEYRING_PLUGIN_DIR/$KEYRING_PLUGIN --keyring_file_data=$MYSQL_TMP_DIR/keyring_2 --gtid-mode=ON --enforce-gtid-consistency=ON --binlog-format='MIXED' +$RPL_OBS_EXAMPLE_OPT --gtid-mode=ON --enforce-gtid-consistency=ON diff --git a/mysql-test/suite/rpl_encryption/t/rpl_transaction_before_commit_failure.test b/mysql-test/suite/rpl_encryption/t/rpl_transaction_before_commit_failure.test index 7544c1a61e22..211d7d27ea0f 100644 --- a/mysql-test/suite/rpl_encryption/t/rpl_transaction_before_commit_failure.test +++ b/mysql-test/suite/rpl_encryption/t/rpl_transaction_before_commit_failure.test @@ -1 +1 @@ ---source suite/rpl/t/rpl_transaction_before_commit_failure.test +--source suite/rpl_gtid/t/rpl_transaction_before_commit_failure.test diff --git a/plugin/keyring_vault/tests/mtr/innodb_online_alter_encryption.test b/plugin/keyring_vault/tests/mtr/innodb_online_alter_encryption.test index 212ba52afdb2..aaf475be8762 100644 --- a/plugin/keyring_vault/tests/mtr/innodb_online_alter_encryption.test +++ b/plugin/keyring_vault/tests/mtr/innodb_online_alter_encryption.test @@ -23,3 +23,4 @@ eval SET @@global.keyring_vault_config="$KEYRING_CONF_FILE_1"; --let MOUNT_POINT_SERVICE_OP=DELETE --let $KEYRING_CONF_FILE=$KEYRING_CONF_FILE_1 --source mount_point_service.inc +--remove_file $KEYRING_INVALID_TOKEN_CONF_FILE diff --git a/plugin/keyring_vault/tests/mtr/innodb_row_log_encryption.test b/plugin/keyring_vault/tests/mtr/innodb_row_log_encryption.test index 7655df774329..9f5e81079cca 100644 --- a/plugin/keyring_vault/tests/mtr/innodb_row_log_encryption.test +++ b/plugin/keyring_vault/tests/mtr/innodb_row_log_encryption.test @@ -23,3 +23,4 @@ eval SET @@global.keyring_vault_config="$KEYRING_CONF_FILE_1"; --let MOUNT_POINT_SERVICE_OP=DELETE --let $KEYRING_CONF_FILE=$KEYRING_CONF_FILE_1 --source mount_point_service.inc +--remove_file $KEYRING_INVALID_TOKEN_CONF_FILE diff --git a/plugin/keyring_vault/tests/mtr/install_keyring_vault.test b/plugin/keyring_vault/tests/mtr/install_keyring_vault.test index d60cce54ab5a..ba298dd44b16 100644 --- a/plugin/keyring_vault/tests/mtr/install_keyring_vault.test +++ b/plugin/keyring_vault/tests/mtr/install_keyring_vault.test @@ -20,3 +20,4 @@ eval SET @@global.keyring_vault_config='$KEYRING_CONF_FILE_2'; --replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR eval SET @@global.keyring_vault_config='$KEYRING_CONF_FILE_1'; UNINSTALL PLUGIN keyring_vault; +--remove_file $KEYRING_INVALID_TOKEN_CONF_FILE diff --git a/plugin/keyring_vault/tests/mtr/is_vault_server_up.inc b/plugin/keyring_vault/tests/mtr/is_vault_server_up.inc index 9ac31c20cc72..6b57967300c1 100644 --- a/plugin/keyring_vault/tests/mtr/is_vault_server_up.inc +++ b/plugin/keyring_vault/tests/mtr/is_vault_server_up.inc @@ -74,7 +74,7 @@ if (!$CURL_TIMEOUT) } close $file; } - + unlink "$vardir/tmp/curl_result"; my $file_name = "$vardir/tmp/mount_list_result.inc"; my $F = IO::File->new($file_name, 'w') or die "Could not open '$file_name' for writing"; if (!$curl_conn_successful) @@ -92,3 +92,4 @@ if (!$CURL_TIMEOUT) EOF --source $MYSQLTEST_VARDIR/tmp/mount_list_result.inc +--remove_file $MYSQLTEST_VARDIR/tmp/mount_list_result.inc diff --git a/plugin/keyring_vault/tests/mtr/key_rotation_qa.test b/plugin/keyring_vault/tests/mtr/key_rotation_qa.test index 41562c2a2583..f7198c8a8ebd 100644 --- a/plugin/keyring_vault/tests/mtr/key_rotation_qa.test +++ b/plugin/keyring_vault/tests/mtr/key_rotation_qa.test @@ -195,4 +195,5 @@ DROP TABLE t1,t2,t5,t12,t10; --source mount_point_service.inc --let $KEYRING_CONF_FILE=$KEYRING_CONF_FILE_2 --source mount_point_service.inc +--remove_file $KEYRING_INVALID_TOKEN_CONF_FILE --echo #End: diff --git a/plugin/keyring_vault/tests/mtr/keyring_udf.test b/plugin/keyring_vault/tests/mtr/keyring_udf.test index af4d27710323..e5807c15e353 100644 --- a/plugin/keyring_vault/tests/mtr/keyring_udf.test +++ b/plugin/keyring_vault/tests/mtr/keyring_udf.test @@ -175,3 +175,4 @@ drop function keyring_key_length_fetch; --source mount_point_service.inc --let $KEYRING_CONF_FILE=$KEYRING_CONF_FILE_2 --source mount_point_service.inc +--remove_file $KEYRING_INVALID_TOKEN_CONF_FILE diff --git a/plugin/keyring_vault/tests/mtr/keyring_vault_config.test b/plugin/keyring_vault/tests/mtr/keyring_vault_config.test index a9002409941a..8819fa429579 100644 --- a/plugin/keyring_vault/tests/mtr/keyring_vault_config.test +++ b/plugin/keyring_vault/tests/mtr/keyring_vault_config.test @@ -26,3 +26,4 @@ SELECT @@global.keyring_vault_config; # cleanup --replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR eval SET @@global.keyring_vault_config= '$KEYRING_CONF_FILE_1'; +--remove_file $KEYRING_INVALID_TOKEN_CONF_FILE diff --git a/plugin/keyring_vault/tests/mtr/keyring_vault_config_qa.test b/plugin/keyring_vault/tests/mtr/keyring_vault_config_qa.test index 6d77c9da7c8d..6b07d4949fd8 100644 --- a/plugin/keyring_vault/tests/mtr/keyring_vault_config_qa.test +++ b/plugin/keyring_vault/tests/mtr/keyring_vault_config_qa.test @@ -90,3 +90,4 @@ DROP TABLE t1; --source mount_point_service.inc --echo --echo #End: +--remove_file $KEYRING_INVALID_TOKEN_CONF_FILE diff --git a/plugin/keyring_vault/tests/mtr/keyring_vault_thd_wait.test b/plugin/keyring_vault/tests/mtr/keyring_vault_thd_wait.test index 64aef6d381c5..0ec67b8cf454 100644 --- a/plugin/keyring_vault/tests/mtr/keyring_vault_thd_wait.test +++ b/plugin/keyring_vault/tests/mtr/keyring_vault_thd_wait.test @@ -34,3 +34,4 @@ DROP TABLE t1; --let MOUNT_POINT_SERVICE_OP=DELETE --let $KEYRING_CONF_FILE=$KEYRING_CONF_FILE_1 --source mount_point_service.inc +--remove_file $KEYRING_INVALID_TOKEN_CONF_FILE diff --git a/plugin/keyring_vault/tests/mtr/rpl_key_rotation.test b/plugin/keyring_vault/tests/mtr/rpl_key_rotation.test index 37a9d5c439b4..6fea60959645 100644 --- a/plugin/keyring_vault/tests/mtr/rpl_key_rotation.test +++ b/plugin/keyring_vault/tests/mtr/rpl_key_rotation.test @@ -143,3 +143,4 @@ UNINSTALL PLUGIN keyring_vault; --let $restart_parameters="restart:$KEYRING_VAULT_PLUGIN_LOAD $KEYRING_VAULT_PLUGIN_OPT" --source include/restart_mysqld.inc # End: +--remove_file $KEYRING_INVALID_TOKEN_CONF_FILE diff --git a/plugin/keyring_vault/tests/mtr/table_encrypt_1.test b/plugin/keyring_vault/tests/mtr/table_encrypt_1.test index 2785f069705d..2a84ad0c66df 100644 --- a/plugin/keyring_vault/tests/mtr/table_encrypt_1.test +++ b/plugin/keyring_vault/tests/mtr/table_encrypt_1.test @@ -16,3 +16,4 @@ --let MOUNT_POINT_SERVICE_OP=DELETE --let $KEYRING_CONF_FILE=$KEYRING_CONF_FILE_1 --source mount_point_service.inc +--remove_file $KEYRING_INVALID_TOKEN_CONF_FILE diff --git a/plugin/keyring_vault/tests/mtr/table_encrypt_2.test b/plugin/keyring_vault/tests/mtr/table_encrypt_2.test index b33bc5eed1e8..0308c7c7e306 100644 --- a/plugin/keyring_vault/tests/mtr/table_encrypt_2.test +++ b/plugin/keyring_vault/tests/mtr/table_encrypt_2.test @@ -32,3 +32,4 @@ eval SET @@global.keyring_vault_config="$KEYRING_CONF_FILE_1"; --source mount_point_service.inc --let $KEYRING_CONF_FILE=$KEYRING_CONF_FILE_2 --source mount_point_service.inc +--remove_file $KEYRING_INVALID_TOKEN_CONF_FILE diff --git a/plugin/keyring_vault/tests/mtr/table_encrypt_3.test b/plugin/keyring_vault/tests/mtr/table_encrypt_3.test index cb518276d4a6..ac643e102204 100644 --- a/plugin/keyring_vault/tests/mtr/table_encrypt_3.test +++ b/plugin/keyring_vault/tests/mtr/table_encrypt_3.test @@ -16,3 +16,4 @@ --let MOUNT_POINT_SERVICE_OP=DELETE --let $KEYRING_CONF_FILE=$KEYRING_CONF_FILE_1 --source mount_point_service.inc +--remove_file $KEYRING_INVALID_TOKEN_CONF_FILE diff --git a/plugin/keyring_vault/tests/mtr/table_encrypt_4.test b/plugin/keyring_vault/tests/mtr/table_encrypt_4.test index d8a45114f568..a99a4bdcf876 100644 --- a/plugin/keyring_vault/tests/mtr/table_encrypt_4.test +++ b/plugin/keyring_vault/tests/mtr/table_encrypt_4.test @@ -14,3 +14,4 @@ --let MOUNT_POINT_SERVICE_OP=DELETE --let $KEYRING_CONF_FILE=$KEYRING_CONF_FILE_2 --source mount_point_service.inc +--remove_file $KEYRING_INVALID_TOKEN_CONF_FILE diff --git a/plugin/keyring_vault/tests/mtr/table_encrypt_5.test b/plugin/keyring_vault/tests/mtr/table_encrypt_5.test index 7e12a0ff6267..7fe060d4368f 100644 --- a/plugin/keyring_vault/tests/mtr/table_encrypt_5.test +++ b/plugin/keyring_vault/tests/mtr/table_encrypt_5.test @@ -27,3 +27,4 @@ call mtr.add_suppression("\\[ERROR\\] Plugin keyring_vault reported: 'File '' no --source mount_point_service.inc --let $KEYRING_CONF_FILE=$KEYRING_CONF_FILE_2 --source mount_point_service.inc +--remove_file $KEYRING_INVALID_TOKEN_CONF_FILE diff --git a/plugin/keyring_vault/tests/mtr/table_encrypt_debug.test b/plugin/keyring_vault/tests/mtr/table_encrypt_debug.test index a9547c678828..cacc88f30ca4 100644 --- a/plugin/keyring_vault/tests/mtr/table_encrypt_debug.test +++ b/plugin/keyring_vault/tests/mtr/table_encrypt_debug.test @@ -15,3 +15,4 @@ --let MOUNT_POINT_SERVICE_OP=DELETE --let $KEYRING_CONF_FILE=$KEYRING_CONF_FILE_1 --source mount_point_service.inc +--remove_file $KEYRING_INVALID_TOKEN_CONF_FILE diff --git a/plugin/keyring_vault/tests/mtr/table_encrypt_kill.test b/plugin/keyring_vault/tests/mtr/table_encrypt_kill.test index d75511cede5c..a45337b2f763 100644 --- a/plugin/keyring_vault/tests/mtr/table_encrypt_kill.test +++ b/plugin/keyring_vault/tests/mtr/table_encrypt_kill.test @@ -15,3 +15,4 @@ --let MOUNT_POINT_SERVICE_OP=DELETE --let $KEYRING_CONF_FILE=$KEYRING_CONF_FILE_1 --source mount_point_service.inc +--remove_file $KEYRING_INVALID_TOKEN_CONF_FILE diff --git a/plugin/keyring_vault/tests/mtr/temp_table_encrypt_keyring_vault.test b/plugin/keyring_vault/tests/mtr/temp_table_encrypt_keyring_vault.test index 39d23f036845..8b40985c7aee 100644 --- a/plugin/keyring_vault/tests/mtr/temp_table_encrypt_keyring_vault.test +++ b/plugin/keyring_vault/tests/mtr/temp_table_encrypt_keyring_vault.test @@ -22,3 +22,4 @@ call mtr.add_suppression("Plugin keyring_vault reported"); --let MOUNT_POINT_SERVICE_OP=DELETE --let $KEYRING_CONF_FILE=$KEYRING_CONF_FILE --source mount_point_service.inc +--remove_file $KEYRING_INVALID_TOKEN_CONF_FILE diff --git a/sql/binlog.cc b/sql/binlog.cc index 9d2ed73c9fa3..d89f39af2e8a 100644 --- a/sql/binlog.cc +++ b/sql/binlog.cc @@ -7022,8 +7022,7 @@ bool MYSQL_BIN_LOG::write_buffer(uchar *buf, uint len, Master_info *mi) { if (crypto.is_enabled()) { ebuf = reinterpret_cast( my_malloc(PSI_NOT_INSTRUMENTED, len, MYF(MY_WME))); - if (!ebuf || - encrypt_event(my_b_append_tell(&log_file), crypto, buf, ebuf, len)) { + if (!ebuf || encrypt_event(my_b_tell(&log_file), crypto, buf, ebuf, len)) { if (ebuf != nullptr) my_free(ebuf); DBUG_RETURN(true); }