1include/begin_replace_gtid_combination.inc [gtid_mode=off/on -> binlog_direct_non_transactional_updates=0/1] 2include/rpl_init.inc [topology=none] 3SET @old_sql_notes= @@GLOBAL.SQL_NOTES; 4SET GLOBAL SQL_NOTES= 0; 5SET SESSION SQL_NOTES= 0; 6CALL mtr.add_suppression('Statement violates GTID consistency:'); 7CALL mtr.add_suppression('Unsafe statement written to the binary log'); 8SET GLOBAL ENFORCE_GTID_CONSISTENCY = 0; 9SET GLOBAL GTID_MODE = OFF_PERMISSIVE; 10SET GLOBAL GTID_MODE = ON_PERMISSIVE; 11SET GLOBAL GTID_MODE = 2; 12######## ENFORCE_GTID_CONSISTENCY=OFF GTID_MODE=ON_PERMISSIVE GTID_NEXT=AUTOMATIC ######## 13CREATE TABLE myisam1 (a INT) ENGINE = MyISAM; 14CREATE TABLE myisam2 (a INT) ENGINE = MyISAM; 15CREATE TABLE innodb (a INT) ENGINE = InnoDB; 16---- MyISAM followed by MyISAM, in one 'trx' ---- 17# enforce_gtid_consistency=0 gtid_mode=2 gtid_next=AUTOMATIC 18SET GTID_NEXT = 'AUTOMATIC'; 19BEGIN; INSERT INTO myisam1 VALUES (1); 20[START] INSERT INTO myisam2 VALUES (1); 21include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 22include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 23[END] INSERT INTO myisam2 VALUES (1); 24include/assert.inc [No warning or error should be generated.] 25include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 26include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 27ROLLBACK; 28Warnings: 29Warning 1196 Some non-transactional changed tables couldn't be rolled back 30SET GTID_NEXT = 'AUTOMATIC'; 31include/assert.inc [Both counters should be 0] 32---- MyISAM and MyISAM in one statement ---- 33CREATE TRIGGER trig BEFORE INSERT ON myisam1 FOR EACH ROW INSERT INTO myisam2 VALUES (1); 34# enforce_gtid_consistency=0 gtid_mode=2 gtid_next=AUTOMATIC 35SET GTID_NEXT = 'AUTOMATIC'; 36[START] INSERT INTO myisam2 VALUES (1); 37include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 38include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 39[END] INSERT INTO myisam2 VALUES (1); 40include/assert.inc [No warning or error should be generated.] 41include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 42include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 43ROLLBACK; 44SET GTID_NEXT = 'AUTOMATIC'; 45include/assert.inc [Both counters should be 0] 46DROP TRIGGER trig; 47---- MyISAM followed by InnoDB, in one 'trx' ---- 48# enforce_gtid_consistency=0 gtid_mode=2 gtid_next=AUTOMATIC 49SET GTID_NEXT = 'AUTOMATIC'; 50BEGIN; INSERT INTO myisam1 VALUES (1); 51[START] INSERT INTO innodb VALUES (1); 52include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 53include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 54[END] INSERT INTO innodb VALUES (1); 55include/assert.inc [No warning or error should be generated.] 56include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 57include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 58ROLLBACK; 59Warnings: 60Warning 1196 Some non-transactional changed tables couldn't be rolled back 61SET GTID_NEXT = 'AUTOMATIC'; 62include/assert.inc [Both counters should be 0] 63SET SESSION BINLOG_FORMAT = MIXED; 64---- InnoDB followed by temp MyISAM in one trx, binlog_format=mix ---- 65CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 66# enforce_gtid_consistency=0 gtid_mode=2 gtid_next=AUTOMATIC 67SET GTID_NEXT = 'AUTOMATIC'; 68BEGIN; INSERT INTO innodb VALUES (1); 69[START] INSERT INTO tmp_myisam1 VALUES (1); 70include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 71include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 72[END] INSERT INTO tmp_myisam1 VALUES (1); 73include/assert.inc [No warning or error should be generated.] 74include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 75include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 76ROLLBACK; 77Warnings: 78Warning 1196 Some non-transactional changed tables couldn't be rolled back 79SET GTID_NEXT = 'AUTOMATIC'; 80include/assert.inc [Both counters should be 0] 81DROP TEMPORARY TABLE tmp_myisam1; 82---- InnoDB and temp MyISAM in one autocommit statement, binlog_format=mix ---- 83CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 84CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 85CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO tmp_myisam1 VALUES (1); INSERT INTO tmp_myisam2 VALUES (1); END; 86# enforce_gtid_consistency=0 gtid_mode=2 gtid_next=AUTOMATIC 87SET GTID_NEXT = 'AUTOMATIC'; 88[START] INSERT INTO innodb VALUES (1); 89include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 90include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 91[END] INSERT INTO innodb VALUES (1); 92include/assert.inc [No warning or error should be generated.] 93include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 94include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 95ROLLBACK; 96SET GTID_NEXT = 'AUTOMATIC'; 97include/assert.inc [Both counters should be 0] 98DROP TRIGGER trig; 99DROP TEMPORARY TABLE tmp_myisam1, tmp_myisam2; 100SET BINLOG_FORMAT = ROW; 101CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 102CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 103---- InnoDB followed by temp MyISAM in one trx, binlog_format=row ---- 104# enforce_gtid_consistency=0 gtid_mode=2 gtid_next=AUTOMATIC 105SET GTID_NEXT = 'AUTOMATIC'; 106BEGIN; INSERT INTO innodb VALUES (1); 107[START] INSERT INTO tmp_myisam1 VALUES (1); 108include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 109include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 110[END] INSERT INTO tmp_myisam1 VALUES (1); 111include/assert.inc [No warning or error should be generated.] 112include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 113include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 114ROLLBACK; 115Warnings: 116Warning 1196 Some non-transactional changed tables couldn't be rolled back 117SET GTID_NEXT = 'AUTOMATIC'; 118include/assert.inc [Both counters should be 0] 119---- InnoDB and temp MyISAM in one statement, binlog_format=row ---- 120CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO tmp_myisam1 VALUES (1); INSERT INTO tmp_myisam2 VALUES (1); END; 121# enforce_gtid_consistency=0 gtid_mode=2 gtid_next=AUTOMATIC 122SET GTID_NEXT = 'AUTOMATIC'; 123[START] INSERT INTO innodb VALUES (1); 124include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 125include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 126[END] INSERT INTO innodb VALUES (1); 127include/assert.inc [No warning or error should be generated.] 128include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 129include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 130ROLLBACK; 131SET GTID_NEXT = 'AUTOMATIC'; 132include/assert.inc [Both counters should be 0] 133DROP TRIGGER trig; 134DROP TEMPORARY TABLE tmp_myisam1, tmp_myisam2; 135SET BINLOG_FORMAT = #; 136CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 137CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 138SET SQL_LOG_BIN = 0; 139---- InnoDB and MyISAM in one statement, SQL_LOG_BIN=0 ---- 140CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO myisam1 VALUES (1); INSERT INTO myisam2 VALUES (1); END; 141# enforce_gtid_consistency=0 gtid_mode=2 gtid_next=AUTOMATIC 142SET GTID_NEXT = 'AUTOMATIC'; 143[START] INSERT INTO innodb VALUES (1); 144include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 145include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 146[END] INSERT INTO innodb VALUES (1); 147include/assert.inc [No warning or error should be generated.] 148include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 149include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 150ROLLBACK; 151SET GTID_NEXT = 'AUTOMATIC'; 152include/assert.inc [Both counters should be 0] 153DROP TRIGGER trig; 154---- InnoDB followed by MyISAM, in one trx, SQL_LOG_BIN=0 ---- 155# enforce_gtid_consistency=0 gtid_mode=2 gtid_next=AUTOMATIC 156SET GTID_NEXT = 'AUTOMATIC'; 157BEGIN; INSERT INTO innodb VALUES (1); 158[START] INSERT INTO myisam1 VALUES (1); 159include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 160include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 161[END] INSERT INTO myisam1 VALUES (1); 162include/assert.inc [No warning or error should be generated.] 163include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 164include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 165ROLLBACK; 166Warnings: 167Warning 1196 Some non-transactional changed tables couldn't be rolled back 168SET GTID_NEXT = 'AUTOMATIC'; 169include/assert.inc [Both counters should be 0] 170---- InnoDB and MyISAM in one statement inside trx, SQL_LOG_BIN=0 ---- 171CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO myisam1 VALUES (1); INSERT INTO myisam2 VALUES (1); END; 172# enforce_gtid_consistency=0 gtid_mode=2 gtid_next=AUTOMATIC 173SET GTID_NEXT = 'AUTOMATIC'; 174BEGIN; 175[START] INSERT INTO innodb VALUES (1); 176include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 177include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 178[END] INSERT INTO innodb VALUES (1); 179include/assert.inc [No warning or error should be generated.] 180include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 181include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 182ROLLBACK; 183Warnings: 184Warning 1196 Some non-transactional changed tables couldn't be rolled back 185SET GTID_NEXT = 'AUTOMATIC'; 186include/assert.inc [Both counters should be 0] 187DROP TRIGGER trig; 188SET SQL_LOG_BIN = 1; 189DROP TABLE myisam1, myisam2, tmp_myisam1, tmp_myisam2, innodb; 190######## ENFORCE_GTID_CONSISTENCY=OFF GTID_MODE=ON_PERMISSIVE GTID_NEXT=ANONYMOUS ######## 191CREATE TABLE myisam1 (a INT) ENGINE = MyISAM; 192CREATE TABLE myisam2 (a INT) ENGINE = MyISAM; 193CREATE TABLE innodb (a INT) ENGINE = InnoDB; 194---- MyISAM followed by MyISAM, in one 'trx' ---- 195# enforce_gtid_consistency=0 gtid_mode=2 gtid_next=ANONYMOUS 196SET GTID_NEXT = 'ANONYMOUS'; 197BEGIN; INSERT INTO myisam1 VALUES (1); 198[START] INSERT INTO myisam2 VALUES (1); 199include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 200include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 201[END] INSERT INTO myisam2 VALUES (1); 202include/assert.inc [No warning or error should be generated.] 203include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 204include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 205ROLLBACK; 206Warnings: 207Warning 1196 Some non-transactional changed tables couldn't be rolled back 208SET GTID_NEXT = 'AUTOMATIC'; 209include/assert.inc [Both counters should be 0] 210---- MyISAM and MyISAM in one statement ---- 211CREATE TRIGGER trig BEFORE INSERT ON myisam1 FOR EACH ROW INSERT INTO myisam2 VALUES (1); 212# enforce_gtid_consistency=0 gtid_mode=2 gtid_next=ANONYMOUS 213SET GTID_NEXT = 'ANONYMOUS'; 214[START] INSERT INTO myisam2 VALUES (1); 215include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 216include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 217[END] INSERT INTO myisam2 VALUES (1); 218include/assert.inc [No warning or error should be generated.] 219include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 220include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 221ROLLBACK; 222SET GTID_NEXT = 'AUTOMATIC'; 223include/assert.inc [Both counters should be 0] 224DROP TRIGGER trig; 225---- MyISAM followed by InnoDB, in one 'trx' ---- 226# enforce_gtid_consistency=0 gtid_mode=2 gtid_next=ANONYMOUS 227SET GTID_NEXT = 'ANONYMOUS'; 228BEGIN; INSERT INTO myisam1 VALUES (1); 229[START] INSERT INTO innodb VALUES (1); 230include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 231include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 232[END] INSERT INTO innodb VALUES (1); 233include/assert.inc [No warning or error should be generated.] 234include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 235include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 236ROLLBACK; 237Warnings: 238Warning 1196 Some non-transactional changed tables couldn't be rolled back 239SET GTID_NEXT = 'AUTOMATIC'; 240include/assert.inc [Both counters should be 0] 241SET SESSION BINLOG_FORMAT = MIXED; 242---- InnoDB followed by temp MyISAM in one trx, binlog_format=mix ---- 243CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 244# enforce_gtid_consistency=0 gtid_mode=2 gtid_next=ANONYMOUS 245SET GTID_NEXT = 'ANONYMOUS'; 246BEGIN; INSERT INTO innodb VALUES (1); 247[START] INSERT INTO tmp_myisam1 VALUES (1); 248include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 249include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 250[END] INSERT INTO tmp_myisam1 VALUES (1); 251include/assert.inc [No warning or error should be generated.] 252include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 253include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 254ROLLBACK; 255Warnings: 256Warning 1196 Some non-transactional changed tables couldn't be rolled back 257SET GTID_NEXT = 'AUTOMATIC'; 258include/assert.inc [Both counters should be 0] 259DROP TEMPORARY TABLE tmp_myisam1; 260---- InnoDB and temp MyISAM in one autocommit statement, binlog_format=mix ---- 261CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 262CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 263CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO tmp_myisam1 VALUES (1); INSERT INTO tmp_myisam2 VALUES (1); END; 264# enforce_gtid_consistency=0 gtid_mode=2 gtid_next=ANONYMOUS 265SET GTID_NEXT = 'ANONYMOUS'; 266[START] INSERT INTO innodb VALUES (1); 267include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 268include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 269[END] INSERT INTO innodb VALUES (1); 270include/assert.inc [No warning or error should be generated.] 271include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 272include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 273ROLLBACK; 274SET GTID_NEXT = 'AUTOMATIC'; 275include/assert.inc [Both counters should be 0] 276DROP TRIGGER trig; 277DROP TEMPORARY TABLE tmp_myisam1, tmp_myisam2; 278SET BINLOG_FORMAT = ROW; 279CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 280CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 281---- InnoDB followed by temp MyISAM in one trx, binlog_format=row ---- 282# enforce_gtid_consistency=0 gtid_mode=2 gtid_next=ANONYMOUS 283SET GTID_NEXT = 'ANONYMOUS'; 284BEGIN; INSERT INTO innodb VALUES (1); 285[START] INSERT INTO tmp_myisam1 VALUES (1); 286include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 287include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 288[END] INSERT INTO tmp_myisam1 VALUES (1); 289include/assert.inc [No warning or error should be generated.] 290include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 291include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 292ROLLBACK; 293Warnings: 294Warning 1196 Some non-transactional changed tables couldn't be rolled back 295SET GTID_NEXT = 'AUTOMATIC'; 296include/assert.inc [Both counters should be 0] 297---- InnoDB and temp MyISAM in one statement, binlog_format=row ---- 298CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO tmp_myisam1 VALUES (1); INSERT INTO tmp_myisam2 VALUES (1); END; 299# enforce_gtid_consistency=0 gtid_mode=2 gtid_next=ANONYMOUS 300SET GTID_NEXT = 'ANONYMOUS'; 301[START] INSERT INTO innodb VALUES (1); 302include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 303include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 304[END] INSERT INTO innodb VALUES (1); 305include/assert.inc [No warning or error should be generated.] 306include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 307include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 308ROLLBACK; 309SET GTID_NEXT = 'AUTOMATIC'; 310include/assert.inc [Both counters should be 0] 311DROP TRIGGER trig; 312DROP TEMPORARY TABLE tmp_myisam1, tmp_myisam2; 313SET BINLOG_FORMAT = #; 314CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 315CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 316SET SQL_LOG_BIN = 0; 317---- InnoDB and MyISAM in one statement, SQL_LOG_BIN=0 ---- 318CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO myisam1 VALUES (1); INSERT INTO myisam2 VALUES (1); END; 319# enforce_gtid_consistency=0 gtid_mode=2 gtid_next=ANONYMOUS 320SET GTID_NEXT = 'ANONYMOUS'; 321[START] INSERT INTO innodb VALUES (1); 322include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 323include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 324[END] INSERT INTO innodb VALUES (1); 325include/assert.inc [No warning or error should be generated.] 326include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 327include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 328ROLLBACK; 329SET GTID_NEXT = 'AUTOMATIC'; 330include/assert.inc [Both counters should be 0] 331DROP TRIGGER trig; 332---- InnoDB followed by MyISAM, in one trx, SQL_LOG_BIN=0 ---- 333# enforce_gtid_consistency=0 gtid_mode=2 gtid_next=ANONYMOUS 334SET GTID_NEXT = 'ANONYMOUS'; 335BEGIN; INSERT INTO innodb VALUES (1); 336[START] INSERT INTO myisam1 VALUES (1); 337include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 338include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 339[END] INSERT INTO myisam1 VALUES (1); 340include/assert.inc [No warning or error should be generated.] 341include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 342include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 343ROLLBACK; 344Warnings: 345Warning 1196 Some non-transactional changed tables couldn't be rolled back 346SET GTID_NEXT = 'AUTOMATIC'; 347include/assert.inc [Both counters should be 0] 348---- InnoDB and MyISAM in one statement inside trx, SQL_LOG_BIN=0 ---- 349CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO myisam1 VALUES (1); INSERT INTO myisam2 VALUES (1); END; 350# enforce_gtid_consistency=0 gtid_mode=2 gtid_next=ANONYMOUS 351SET GTID_NEXT = 'ANONYMOUS'; 352BEGIN; 353[START] INSERT INTO innodb VALUES (1); 354include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 355include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 356[END] INSERT INTO innodb VALUES (1); 357include/assert.inc [No warning or error should be generated.] 358include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 359include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 360ROLLBACK; 361Warnings: 362Warning 1196 Some non-transactional changed tables couldn't be rolled back 363SET GTID_NEXT = 'AUTOMATIC'; 364include/assert.inc [Both counters should be 0] 365DROP TRIGGER trig; 366SET SQL_LOG_BIN = 1; 367DROP TABLE myisam1, myisam2, tmp_myisam1, tmp_myisam2, innodb; 368######## ENFORCE_GTID_CONSISTENCY=OFF GTID_MODE=ON_PERMISSIVE GTID_NEXT=GTID ######## 369CREATE TABLE myisam1 (a INT) ENGINE = MyISAM; 370CREATE TABLE myisam2 (a INT) ENGINE = MyISAM; 371CREATE TABLE innodb (a INT) ENGINE = InnoDB; 372---- MyISAM and MyISAM in one statement ---- 373CREATE TRIGGER trig BEFORE INSERT ON myisam1 FOR EACH ROW INSERT INTO myisam2 VALUES (1); 374# enforce_gtid_consistency=0 gtid_mode=2 gtid_next=GTID 375SET GTID_NEXT = 'GTID'; 376[START] INSERT INTO myisam2 VALUES (1); 377include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 378include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 379[END] INSERT INTO myisam2 VALUES (1); 380include/assert.inc [No warning or error should be generated.] 381include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 382include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 383ROLLBACK; 384SET GTID_NEXT = 'AUTOMATIC'; 385include/assert.inc [Both counters should be 0] 386DROP TRIGGER trig; 387SET SESSION BINLOG_FORMAT = MIXED; 388---- InnoDB followed by temp MyISAM in one trx, binlog_format=mix ---- 389CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 390# enforce_gtid_consistency=0 gtid_mode=2 gtid_next=GTID 391SET GTID_NEXT = 'GTID'; 392BEGIN; INSERT INTO innodb VALUES (1); 393[START] INSERT INTO tmp_myisam1 VALUES (1); 394include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 395include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 396[END] INSERT INTO tmp_myisam1 VALUES (1); 397include/assert.inc [No warning or error should be generated.] 398include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 399include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 400ROLLBACK; 401Warnings: 402Warning 1196 Some non-transactional changed tables couldn't be rolled back 403SET GTID_NEXT = 'AUTOMATIC'; 404include/assert.inc [Both counters should be 0] 405DROP TEMPORARY TABLE tmp_myisam1; 406---- InnoDB and temp MyISAM in one autocommit statement, binlog_format=mix ---- 407CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 408CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 409CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO tmp_myisam1 VALUES (1); INSERT INTO tmp_myisam2 VALUES (1); END; 410# enforce_gtid_consistency=0 gtid_mode=2 gtid_next=GTID 411SET GTID_NEXT = 'GTID'; 412[START] INSERT INTO innodb VALUES (1); 413include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 414include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 415[END] INSERT INTO innodb VALUES (1); 416include/assert.inc [No warning or error should be generated.] 417include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 418include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 419ROLLBACK; 420SET GTID_NEXT = 'AUTOMATIC'; 421include/assert.inc [Both counters should be 0] 422DROP TRIGGER trig; 423DROP TEMPORARY TABLE tmp_myisam1, tmp_myisam2; 424SET BINLOG_FORMAT = ROW; 425CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 426CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 427---- InnoDB followed by temp MyISAM in one trx, binlog_format=row ---- 428# enforce_gtid_consistency=0 gtid_mode=2 gtid_next=GTID 429SET GTID_NEXT = 'GTID'; 430BEGIN; INSERT INTO innodb VALUES (1); 431[START] INSERT INTO tmp_myisam1 VALUES (1); 432include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 433include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 434[END] INSERT INTO tmp_myisam1 VALUES (1); 435include/assert.inc [No warning or error should be generated.] 436include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 437include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 438ROLLBACK; 439Warnings: 440Warning 1196 Some non-transactional changed tables couldn't be rolled back 441SET GTID_NEXT = 'AUTOMATIC'; 442include/assert.inc [Both counters should be 0] 443---- InnoDB and temp MyISAM in one statement, binlog_format=row ---- 444CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO tmp_myisam1 VALUES (1); INSERT INTO tmp_myisam2 VALUES (1); END; 445# enforce_gtid_consistency=0 gtid_mode=2 gtid_next=GTID 446SET GTID_NEXT = 'GTID'; 447[START] INSERT INTO innodb VALUES (1); 448include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 449include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 450[END] INSERT INTO innodb VALUES (1); 451include/assert.inc [No warning or error should be generated.] 452include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 453include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 454ROLLBACK; 455SET GTID_NEXT = 'AUTOMATIC'; 456include/assert.inc [Both counters should be 0] 457DROP TRIGGER trig; 458DROP TEMPORARY TABLE tmp_myisam1, tmp_myisam2; 459SET BINLOG_FORMAT = #; 460CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 461CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 462SET SQL_LOG_BIN = 0; 463---- InnoDB and MyISAM in one statement, SQL_LOG_BIN=0 ---- 464CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO myisam1 VALUES (1); INSERT INTO myisam2 VALUES (1); END; 465# enforce_gtid_consistency=0 gtid_mode=2 gtid_next=GTID 466SET GTID_NEXT = 'GTID'; 467[START] INSERT INTO innodb VALUES (1); 468include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 469include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 470[END] INSERT INTO innodb VALUES (1); 471include/assert.inc [No warning or error should be generated.] 472include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 473include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 474ROLLBACK; 475SET GTID_NEXT = 'AUTOMATIC'; 476include/assert.inc [Both counters should be 0] 477DROP TRIGGER trig; 478---- InnoDB followed by MyISAM, in one trx, SQL_LOG_BIN=0 ---- 479# enforce_gtid_consistency=0 gtid_mode=2 gtid_next=GTID 480SET GTID_NEXT = 'GTID'; 481BEGIN; INSERT INTO innodb VALUES (1); 482[START] INSERT INTO myisam1 VALUES (1); 483include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 484include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 485[END] INSERT INTO myisam1 VALUES (1); 486include/assert.inc [No warning or error should be generated.] 487include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 488include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 489ROLLBACK; 490Warnings: 491Warning 1196 Some non-transactional changed tables couldn't be rolled back 492SET GTID_NEXT = 'AUTOMATIC'; 493include/assert.inc [Both counters should be 0] 494---- InnoDB and MyISAM in one statement inside trx, SQL_LOG_BIN=0 ---- 495CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO myisam1 VALUES (1); INSERT INTO myisam2 VALUES (1); END; 496# enforce_gtid_consistency=0 gtid_mode=2 gtid_next=GTID 497SET GTID_NEXT = 'GTID'; 498BEGIN; 499[START] INSERT INTO innodb VALUES (1); 500include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 501include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 502[END] INSERT INTO innodb VALUES (1); 503include/assert.inc [No warning or error should be generated.] 504include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 505include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 506ROLLBACK; 507Warnings: 508Warning 1196 Some non-transactional changed tables couldn't be rolled back 509SET GTID_NEXT = 'AUTOMATIC'; 510include/assert.inc [Both counters should be 0] 511DROP TRIGGER trig; 512SET SQL_LOG_BIN = 1; 513DROP TABLE myisam1, myisam2, tmp_myisam1, tmp_myisam2, innodb; 514SET GLOBAL GTID_MODE = 1; 515######## ENFORCE_GTID_CONSISTENCY=OFF GTID_MODE=OFF_PERMISSIVE GTID_NEXT=AUTOMATIC ######## 516CREATE TABLE myisam1 (a INT) ENGINE = MyISAM; 517CREATE TABLE myisam2 (a INT) ENGINE = MyISAM; 518CREATE TABLE innodb (a INT) ENGINE = InnoDB; 519---- MyISAM followed by MyISAM, in one 'trx' ---- 520# enforce_gtid_consistency=0 gtid_mode=1 gtid_next=AUTOMATIC 521SET GTID_NEXT = 'AUTOMATIC'; 522BEGIN; INSERT INTO myisam1 VALUES (1); 523[START] INSERT INTO myisam2 VALUES (1); 524include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 525include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 526[END] INSERT INTO myisam2 VALUES (1); 527include/assert.inc [No warning or error should be generated.] 528include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 529include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 530ROLLBACK; 531Warnings: 532Warning 1196 Some non-transactional changed tables couldn't be rolled back 533SET GTID_NEXT = 'AUTOMATIC'; 534include/assert.inc [Both counters should be 0] 535---- MyISAM and MyISAM in one statement ---- 536CREATE TRIGGER trig BEFORE INSERT ON myisam1 FOR EACH ROW INSERT INTO myisam2 VALUES (1); 537# enforce_gtid_consistency=0 gtid_mode=1 gtid_next=AUTOMATIC 538SET GTID_NEXT = 'AUTOMATIC'; 539[START] INSERT INTO myisam2 VALUES (1); 540include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 541include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 542[END] INSERT INTO myisam2 VALUES (1); 543include/assert.inc [No warning or error should be generated.] 544include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 545include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 546ROLLBACK; 547SET GTID_NEXT = 'AUTOMATIC'; 548include/assert.inc [Both counters should be 0] 549DROP TRIGGER trig; 550---- MyISAM followed by InnoDB, in one 'trx' ---- 551# enforce_gtid_consistency=0 gtid_mode=1 gtid_next=AUTOMATIC 552SET GTID_NEXT = 'AUTOMATIC'; 553BEGIN; INSERT INTO myisam1 VALUES (1); 554[START] INSERT INTO innodb VALUES (1); 555include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 556include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 557[END] INSERT INTO innodb VALUES (1); 558include/assert.inc [No warning or error should be generated.] 559include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 560include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 561ROLLBACK; 562Warnings: 563Warning 1196 Some non-transactional changed tables couldn't be rolled back 564SET GTID_NEXT = 'AUTOMATIC'; 565include/assert.inc [Both counters should be 0] 566SET SESSION BINLOG_FORMAT = MIXED; 567---- InnoDB followed by temp MyISAM in one trx, binlog_format=mix ---- 568CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 569# enforce_gtid_consistency=0 gtid_mode=1 gtid_next=AUTOMATIC 570SET GTID_NEXT = 'AUTOMATIC'; 571BEGIN; INSERT INTO innodb VALUES (1); 572[START] INSERT INTO tmp_myisam1 VALUES (1); 573include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 574include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 575[END] INSERT INTO tmp_myisam1 VALUES (1); 576include/assert.inc [No warning or error should be generated.] 577include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 578include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 579ROLLBACK; 580Warnings: 581Warning 1196 Some non-transactional changed tables couldn't be rolled back 582SET GTID_NEXT = 'AUTOMATIC'; 583include/assert.inc [Both counters should be 0] 584DROP TEMPORARY TABLE tmp_myisam1; 585---- InnoDB and temp MyISAM in one autocommit statement, binlog_format=mix ---- 586CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 587CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 588CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO tmp_myisam1 VALUES (1); INSERT INTO tmp_myisam2 VALUES (1); END; 589# enforce_gtid_consistency=0 gtid_mode=1 gtid_next=AUTOMATIC 590SET GTID_NEXT = 'AUTOMATIC'; 591[START] INSERT INTO innodb VALUES (1); 592include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 593include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 594[END] INSERT INTO innodb VALUES (1); 595include/assert.inc [No warning or error should be generated.] 596include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 597include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 598ROLLBACK; 599SET GTID_NEXT = 'AUTOMATIC'; 600include/assert.inc [Both counters should be 0] 601DROP TRIGGER trig; 602DROP TEMPORARY TABLE tmp_myisam1, tmp_myisam2; 603SET BINLOG_FORMAT = ROW; 604CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 605CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 606---- InnoDB followed by temp MyISAM in one trx, binlog_format=row ---- 607# enforce_gtid_consistency=0 gtid_mode=1 gtid_next=AUTOMATIC 608SET GTID_NEXT = 'AUTOMATIC'; 609BEGIN; INSERT INTO innodb VALUES (1); 610[START] INSERT INTO tmp_myisam1 VALUES (1); 611include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 612include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 613[END] INSERT INTO tmp_myisam1 VALUES (1); 614include/assert.inc [No warning or error should be generated.] 615include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 616include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 617ROLLBACK; 618Warnings: 619Warning 1196 Some non-transactional changed tables couldn't be rolled back 620SET GTID_NEXT = 'AUTOMATIC'; 621include/assert.inc [Both counters should be 0] 622---- InnoDB and temp MyISAM in one statement, binlog_format=row ---- 623CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO tmp_myisam1 VALUES (1); INSERT INTO tmp_myisam2 VALUES (1); END; 624# enforce_gtid_consistency=0 gtid_mode=1 gtid_next=AUTOMATIC 625SET GTID_NEXT = 'AUTOMATIC'; 626[START] INSERT INTO innodb VALUES (1); 627include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 628include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 629[END] INSERT INTO innodb VALUES (1); 630include/assert.inc [No warning or error should be generated.] 631include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 632include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 633ROLLBACK; 634SET GTID_NEXT = 'AUTOMATIC'; 635include/assert.inc [Both counters should be 0] 636DROP TRIGGER trig; 637DROP TEMPORARY TABLE tmp_myisam1, tmp_myisam2; 638SET BINLOG_FORMAT = #; 639CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 640CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 641SET SQL_LOG_BIN = 0; 642---- InnoDB and MyISAM in one statement, SQL_LOG_BIN=0 ---- 643CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO myisam1 VALUES (1); INSERT INTO myisam2 VALUES (1); END; 644# enforce_gtid_consistency=0 gtid_mode=1 gtid_next=AUTOMATIC 645SET GTID_NEXT = 'AUTOMATIC'; 646[START] INSERT INTO innodb VALUES (1); 647include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 648include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 649[END] INSERT INTO innodb VALUES (1); 650include/assert.inc [No warning or error should be generated.] 651include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 652include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 653ROLLBACK; 654SET GTID_NEXT = 'AUTOMATIC'; 655include/assert.inc [Both counters should be 0] 656DROP TRIGGER trig; 657---- InnoDB followed by MyISAM, in one trx, SQL_LOG_BIN=0 ---- 658# enforce_gtid_consistency=0 gtid_mode=1 gtid_next=AUTOMATIC 659SET GTID_NEXT = 'AUTOMATIC'; 660BEGIN; INSERT INTO innodb VALUES (1); 661[START] INSERT INTO myisam1 VALUES (1); 662include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 663include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 664[END] INSERT INTO myisam1 VALUES (1); 665include/assert.inc [No warning or error should be generated.] 666include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 667include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 668ROLLBACK; 669Warnings: 670Warning 1196 Some non-transactional changed tables couldn't be rolled back 671SET GTID_NEXT = 'AUTOMATIC'; 672include/assert.inc [Both counters should be 0] 673---- InnoDB and MyISAM in one statement inside trx, SQL_LOG_BIN=0 ---- 674CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO myisam1 VALUES (1); INSERT INTO myisam2 VALUES (1); END; 675# enforce_gtid_consistency=0 gtid_mode=1 gtid_next=AUTOMATIC 676SET GTID_NEXT = 'AUTOMATIC'; 677BEGIN; 678[START] INSERT INTO innodb VALUES (1); 679include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 680include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 681[END] INSERT INTO innodb VALUES (1); 682include/assert.inc [No warning or error should be generated.] 683include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 684include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 685ROLLBACK; 686Warnings: 687Warning 1196 Some non-transactional changed tables couldn't be rolled back 688SET GTID_NEXT = 'AUTOMATIC'; 689include/assert.inc [Both counters should be 0] 690DROP TRIGGER trig; 691SET SQL_LOG_BIN = 1; 692DROP TABLE myisam1, myisam2, tmp_myisam1, tmp_myisam2, innodb; 693######## ENFORCE_GTID_CONSISTENCY=OFF GTID_MODE=OFF_PERMISSIVE GTID_NEXT=ANONYMOUS ######## 694CREATE TABLE myisam1 (a INT) ENGINE = MyISAM; 695CREATE TABLE myisam2 (a INT) ENGINE = MyISAM; 696CREATE TABLE innodb (a INT) ENGINE = InnoDB; 697---- MyISAM followed by MyISAM, in one 'trx' ---- 698# enforce_gtid_consistency=0 gtid_mode=1 gtid_next=ANONYMOUS 699SET GTID_NEXT = 'ANONYMOUS'; 700BEGIN; INSERT INTO myisam1 VALUES (1); 701[START] INSERT INTO myisam2 VALUES (1); 702include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 703include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 704[END] INSERT INTO myisam2 VALUES (1); 705include/assert.inc [No warning or error should be generated.] 706include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 707include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 708ROLLBACK; 709Warnings: 710Warning 1196 Some non-transactional changed tables couldn't be rolled back 711SET GTID_NEXT = 'AUTOMATIC'; 712include/assert.inc [Both counters should be 0] 713---- MyISAM and MyISAM in one statement ---- 714CREATE TRIGGER trig BEFORE INSERT ON myisam1 FOR EACH ROW INSERT INTO myisam2 VALUES (1); 715# enforce_gtid_consistency=0 gtid_mode=1 gtid_next=ANONYMOUS 716SET GTID_NEXT = 'ANONYMOUS'; 717[START] INSERT INTO myisam2 VALUES (1); 718include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 719include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 720[END] INSERT INTO myisam2 VALUES (1); 721include/assert.inc [No warning or error should be generated.] 722include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 723include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 724ROLLBACK; 725SET GTID_NEXT = 'AUTOMATIC'; 726include/assert.inc [Both counters should be 0] 727DROP TRIGGER trig; 728---- MyISAM followed by InnoDB, in one 'trx' ---- 729# enforce_gtid_consistency=0 gtid_mode=1 gtid_next=ANONYMOUS 730SET GTID_NEXT = 'ANONYMOUS'; 731BEGIN; INSERT INTO myisam1 VALUES (1); 732[START] INSERT INTO innodb VALUES (1); 733include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 734include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 735[END] INSERT INTO innodb VALUES (1); 736include/assert.inc [No warning or error should be generated.] 737include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 738include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 739ROLLBACK; 740Warnings: 741Warning 1196 Some non-transactional changed tables couldn't be rolled back 742SET GTID_NEXT = 'AUTOMATIC'; 743include/assert.inc [Both counters should be 0] 744SET SESSION BINLOG_FORMAT = MIXED; 745---- InnoDB followed by temp MyISAM in one trx, binlog_format=mix ---- 746CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 747# enforce_gtid_consistency=0 gtid_mode=1 gtid_next=ANONYMOUS 748SET GTID_NEXT = 'ANONYMOUS'; 749BEGIN; INSERT INTO innodb VALUES (1); 750[START] INSERT INTO tmp_myisam1 VALUES (1); 751include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 752include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 753[END] INSERT INTO tmp_myisam1 VALUES (1); 754include/assert.inc [No warning or error should be generated.] 755include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 756include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 757ROLLBACK; 758Warnings: 759Warning 1196 Some non-transactional changed tables couldn't be rolled back 760SET GTID_NEXT = 'AUTOMATIC'; 761include/assert.inc [Both counters should be 0] 762DROP TEMPORARY TABLE tmp_myisam1; 763---- InnoDB and temp MyISAM in one autocommit statement, binlog_format=mix ---- 764CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 765CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 766CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO tmp_myisam1 VALUES (1); INSERT INTO tmp_myisam2 VALUES (1); END; 767# enforce_gtid_consistency=0 gtid_mode=1 gtid_next=ANONYMOUS 768SET GTID_NEXT = 'ANONYMOUS'; 769[START] INSERT INTO innodb VALUES (1); 770include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 771include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 772[END] INSERT INTO innodb VALUES (1); 773include/assert.inc [No warning or error should be generated.] 774include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 775include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 776ROLLBACK; 777SET GTID_NEXT = 'AUTOMATIC'; 778include/assert.inc [Both counters should be 0] 779DROP TRIGGER trig; 780DROP TEMPORARY TABLE tmp_myisam1, tmp_myisam2; 781SET BINLOG_FORMAT = ROW; 782CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 783CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 784---- InnoDB followed by temp MyISAM in one trx, binlog_format=row ---- 785# enforce_gtid_consistency=0 gtid_mode=1 gtid_next=ANONYMOUS 786SET GTID_NEXT = 'ANONYMOUS'; 787BEGIN; INSERT INTO innodb VALUES (1); 788[START] INSERT INTO tmp_myisam1 VALUES (1); 789include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 790include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 791[END] INSERT INTO tmp_myisam1 VALUES (1); 792include/assert.inc [No warning or error should be generated.] 793include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 794include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 795ROLLBACK; 796Warnings: 797Warning 1196 Some non-transactional changed tables couldn't be rolled back 798SET GTID_NEXT = 'AUTOMATIC'; 799include/assert.inc [Both counters should be 0] 800---- InnoDB and temp MyISAM in one statement, binlog_format=row ---- 801CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO tmp_myisam1 VALUES (1); INSERT INTO tmp_myisam2 VALUES (1); END; 802# enforce_gtid_consistency=0 gtid_mode=1 gtid_next=ANONYMOUS 803SET GTID_NEXT = 'ANONYMOUS'; 804[START] INSERT INTO innodb VALUES (1); 805include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 806include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 807[END] INSERT INTO innodb VALUES (1); 808include/assert.inc [No warning or error should be generated.] 809include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 810include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 811ROLLBACK; 812SET GTID_NEXT = 'AUTOMATIC'; 813include/assert.inc [Both counters should be 0] 814DROP TRIGGER trig; 815DROP TEMPORARY TABLE tmp_myisam1, tmp_myisam2; 816SET BINLOG_FORMAT = #; 817CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 818CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 819SET SQL_LOG_BIN = 0; 820---- InnoDB and MyISAM in one statement, SQL_LOG_BIN=0 ---- 821CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO myisam1 VALUES (1); INSERT INTO myisam2 VALUES (1); END; 822# enforce_gtid_consistency=0 gtid_mode=1 gtid_next=ANONYMOUS 823SET GTID_NEXT = 'ANONYMOUS'; 824[START] INSERT INTO innodb VALUES (1); 825include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 826include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 827[END] INSERT INTO innodb VALUES (1); 828include/assert.inc [No warning or error should be generated.] 829include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 830include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 831ROLLBACK; 832SET GTID_NEXT = 'AUTOMATIC'; 833include/assert.inc [Both counters should be 0] 834DROP TRIGGER trig; 835---- InnoDB followed by MyISAM, in one trx, SQL_LOG_BIN=0 ---- 836# enforce_gtid_consistency=0 gtid_mode=1 gtid_next=ANONYMOUS 837SET GTID_NEXT = 'ANONYMOUS'; 838BEGIN; INSERT INTO innodb VALUES (1); 839[START] INSERT INTO myisam1 VALUES (1); 840include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 841include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 842[END] INSERT INTO myisam1 VALUES (1); 843include/assert.inc [No warning or error should be generated.] 844include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 845include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 846ROLLBACK; 847Warnings: 848Warning 1196 Some non-transactional changed tables couldn't be rolled back 849SET GTID_NEXT = 'AUTOMATIC'; 850include/assert.inc [Both counters should be 0] 851---- InnoDB and MyISAM in one statement inside trx, SQL_LOG_BIN=0 ---- 852CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO myisam1 VALUES (1); INSERT INTO myisam2 VALUES (1); END; 853# enforce_gtid_consistency=0 gtid_mode=1 gtid_next=ANONYMOUS 854SET GTID_NEXT = 'ANONYMOUS'; 855BEGIN; 856[START] INSERT INTO innodb VALUES (1); 857include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 858include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 859[END] INSERT INTO innodb VALUES (1); 860include/assert.inc [No warning or error should be generated.] 861include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 862include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 863ROLLBACK; 864Warnings: 865Warning 1196 Some non-transactional changed tables couldn't be rolled back 866SET GTID_NEXT = 'AUTOMATIC'; 867include/assert.inc [Both counters should be 0] 868DROP TRIGGER trig; 869SET SQL_LOG_BIN = 1; 870DROP TABLE myisam1, myisam2, tmp_myisam1, tmp_myisam2, innodb; 871######## ENFORCE_GTID_CONSISTENCY=OFF GTID_MODE=OFF_PERMISSIVE GTID_NEXT=GTID ######## 872CREATE TABLE myisam1 (a INT) ENGINE = MyISAM; 873CREATE TABLE myisam2 (a INT) ENGINE = MyISAM; 874CREATE TABLE innodb (a INT) ENGINE = InnoDB; 875---- MyISAM and MyISAM in one statement ---- 876CREATE TRIGGER trig BEFORE INSERT ON myisam1 FOR EACH ROW INSERT INTO myisam2 VALUES (1); 877# enforce_gtid_consistency=0 gtid_mode=1 gtid_next=GTID 878SET GTID_NEXT = 'GTID'; 879[START] INSERT INTO myisam2 VALUES (1); 880include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 881include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 882[END] INSERT INTO myisam2 VALUES (1); 883include/assert.inc [No warning or error should be generated.] 884include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 885include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 886ROLLBACK; 887SET GTID_NEXT = 'AUTOMATIC'; 888include/assert.inc [Both counters should be 0] 889DROP TRIGGER trig; 890SET SESSION BINLOG_FORMAT = MIXED; 891---- InnoDB followed by temp MyISAM in one trx, binlog_format=mix ---- 892CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 893# enforce_gtid_consistency=0 gtid_mode=1 gtid_next=GTID 894SET GTID_NEXT = 'GTID'; 895BEGIN; INSERT INTO innodb VALUES (1); 896[START] INSERT INTO tmp_myisam1 VALUES (1); 897include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 898include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 899[END] INSERT INTO tmp_myisam1 VALUES (1); 900include/assert.inc [No warning or error should be generated.] 901include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 902include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 903ROLLBACK; 904Warnings: 905Warning 1196 Some non-transactional changed tables couldn't be rolled back 906SET GTID_NEXT = 'AUTOMATIC'; 907include/assert.inc [Both counters should be 0] 908DROP TEMPORARY TABLE tmp_myisam1; 909---- InnoDB and temp MyISAM in one autocommit statement, binlog_format=mix ---- 910CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 911CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 912CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO tmp_myisam1 VALUES (1); INSERT INTO tmp_myisam2 VALUES (1); END; 913# enforce_gtid_consistency=0 gtid_mode=1 gtid_next=GTID 914SET GTID_NEXT = 'GTID'; 915[START] INSERT INTO innodb VALUES (1); 916include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 917include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 918[END] INSERT INTO innodb VALUES (1); 919include/assert.inc [No warning or error should be generated.] 920include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 921include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 922ROLLBACK; 923SET GTID_NEXT = 'AUTOMATIC'; 924include/assert.inc [Both counters should be 0] 925DROP TRIGGER trig; 926DROP TEMPORARY TABLE tmp_myisam1, tmp_myisam2; 927SET BINLOG_FORMAT = ROW; 928CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 929CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 930---- InnoDB followed by temp MyISAM in one trx, binlog_format=row ---- 931# enforce_gtid_consistency=0 gtid_mode=1 gtid_next=GTID 932SET GTID_NEXT = 'GTID'; 933BEGIN; INSERT INTO innodb VALUES (1); 934[START] INSERT INTO tmp_myisam1 VALUES (1); 935include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 936include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 937[END] INSERT INTO tmp_myisam1 VALUES (1); 938include/assert.inc [No warning or error should be generated.] 939include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 940include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 941ROLLBACK; 942Warnings: 943Warning 1196 Some non-transactional changed tables couldn't be rolled back 944SET GTID_NEXT = 'AUTOMATIC'; 945include/assert.inc [Both counters should be 0] 946---- InnoDB and temp MyISAM in one statement, binlog_format=row ---- 947CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO tmp_myisam1 VALUES (1); INSERT INTO tmp_myisam2 VALUES (1); END; 948# enforce_gtid_consistency=0 gtid_mode=1 gtid_next=GTID 949SET GTID_NEXT = 'GTID'; 950[START] INSERT INTO innodb VALUES (1); 951include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 952include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 953[END] INSERT INTO innodb VALUES (1); 954include/assert.inc [No warning or error should be generated.] 955include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 956include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 957ROLLBACK; 958SET GTID_NEXT = 'AUTOMATIC'; 959include/assert.inc [Both counters should be 0] 960DROP TRIGGER trig; 961DROP TEMPORARY TABLE tmp_myisam1, tmp_myisam2; 962SET BINLOG_FORMAT = #; 963CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 964CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 965SET SQL_LOG_BIN = 0; 966---- InnoDB and MyISAM in one statement, SQL_LOG_BIN=0 ---- 967CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO myisam1 VALUES (1); INSERT INTO myisam2 VALUES (1); END; 968# enforce_gtid_consistency=0 gtid_mode=1 gtid_next=GTID 969SET GTID_NEXT = 'GTID'; 970[START] INSERT INTO innodb VALUES (1); 971include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 972include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 973[END] INSERT INTO innodb VALUES (1); 974include/assert.inc [No warning or error should be generated.] 975include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 976include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 977ROLLBACK; 978SET GTID_NEXT = 'AUTOMATIC'; 979include/assert.inc [Both counters should be 0] 980DROP TRIGGER trig; 981---- InnoDB followed by MyISAM, in one trx, SQL_LOG_BIN=0 ---- 982# enforce_gtid_consistency=0 gtid_mode=1 gtid_next=GTID 983SET GTID_NEXT = 'GTID'; 984BEGIN; INSERT INTO innodb VALUES (1); 985[START] INSERT INTO myisam1 VALUES (1); 986include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 987include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 988[END] INSERT INTO myisam1 VALUES (1); 989include/assert.inc [No warning or error should be generated.] 990include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 991include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 992ROLLBACK; 993Warnings: 994Warning 1196 Some non-transactional changed tables couldn't be rolled back 995SET GTID_NEXT = 'AUTOMATIC'; 996include/assert.inc [Both counters should be 0] 997---- InnoDB and MyISAM in one statement inside trx, SQL_LOG_BIN=0 ---- 998CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO myisam1 VALUES (1); INSERT INTO myisam2 VALUES (1); END; 999# enforce_gtid_consistency=0 gtid_mode=1 gtid_next=GTID 1000SET GTID_NEXT = 'GTID'; 1001BEGIN; 1002[START] INSERT INTO innodb VALUES (1); 1003include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1004include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1005[END] INSERT INTO innodb VALUES (1); 1006include/assert.inc [No warning or error should be generated.] 1007include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1008include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1009ROLLBACK; 1010Warnings: 1011Warning 1196 Some non-transactional changed tables couldn't be rolled back 1012SET GTID_NEXT = 'AUTOMATIC'; 1013include/assert.inc [Both counters should be 0] 1014DROP TRIGGER trig; 1015SET SQL_LOG_BIN = 1; 1016DROP TABLE myisam1, myisam2, tmp_myisam1, tmp_myisam2, innodb; 1017SET GLOBAL GTID_MODE = 0; 1018######## ENFORCE_GTID_CONSISTENCY=OFF GTID_MODE=OFF GTID_NEXT=AUTOMATIC ######## 1019CREATE TABLE myisam1 (a INT) ENGINE = MyISAM; 1020CREATE TABLE myisam2 (a INT) ENGINE = MyISAM; 1021CREATE TABLE innodb (a INT) ENGINE = InnoDB; 1022---- MyISAM followed by MyISAM, in one 'trx' ---- 1023# enforce_gtid_consistency=0 gtid_mode=0 gtid_next=AUTOMATIC 1024SET GTID_NEXT = 'AUTOMATIC'; 1025BEGIN; INSERT INTO myisam1 VALUES (1); 1026[START] INSERT INTO myisam2 VALUES (1); 1027include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1028include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1029[END] INSERT INTO myisam2 VALUES (1); 1030include/assert.inc [No warning or error should be generated.] 1031include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1032include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1033ROLLBACK; 1034Warnings: 1035Warning 1196 Some non-transactional changed tables couldn't be rolled back 1036SET GTID_NEXT = 'AUTOMATIC'; 1037include/assert.inc [Both counters should be 0] 1038---- MyISAM and MyISAM in one statement ---- 1039CREATE TRIGGER trig BEFORE INSERT ON myisam1 FOR EACH ROW INSERT INTO myisam2 VALUES (1); 1040# enforce_gtid_consistency=0 gtid_mode=0 gtid_next=AUTOMATIC 1041SET GTID_NEXT = 'AUTOMATIC'; 1042[START] INSERT INTO myisam2 VALUES (1); 1043include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1044include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1045[END] INSERT INTO myisam2 VALUES (1); 1046include/assert.inc [No warning or error should be generated.] 1047include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1048include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1049ROLLBACK; 1050SET GTID_NEXT = 'AUTOMATIC'; 1051include/assert.inc [Both counters should be 0] 1052DROP TRIGGER trig; 1053---- MyISAM followed by InnoDB, in one 'trx' ---- 1054# enforce_gtid_consistency=0 gtid_mode=0 gtid_next=AUTOMATIC 1055SET GTID_NEXT = 'AUTOMATIC'; 1056BEGIN; INSERT INTO myisam1 VALUES (1); 1057[START] INSERT INTO innodb VALUES (1); 1058include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1059include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1060[END] INSERT INTO innodb VALUES (1); 1061include/assert.inc [No warning or error should be generated.] 1062include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1063include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1064ROLLBACK; 1065Warnings: 1066Warning 1196 Some non-transactional changed tables couldn't be rolled back 1067SET GTID_NEXT = 'AUTOMATIC'; 1068include/assert.inc [Both counters should be 0] 1069SET SESSION BINLOG_FORMAT = MIXED; 1070---- InnoDB followed by temp MyISAM in one trx, binlog_format=mix ---- 1071CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 1072# enforce_gtid_consistency=0 gtid_mode=0 gtid_next=AUTOMATIC 1073SET GTID_NEXT = 'AUTOMATIC'; 1074BEGIN; INSERT INTO innodb VALUES (1); 1075[START] INSERT INTO tmp_myisam1 VALUES (1); 1076include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1077include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1078[END] INSERT INTO tmp_myisam1 VALUES (1); 1079include/assert.inc [No warning or error should be generated.] 1080include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1081include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1082ROLLBACK; 1083Warnings: 1084Warning 1196 Some non-transactional changed tables couldn't be rolled back 1085SET GTID_NEXT = 'AUTOMATIC'; 1086include/assert.inc [Both counters should be 0] 1087DROP TEMPORARY TABLE tmp_myisam1; 1088---- InnoDB and temp MyISAM in one autocommit statement, binlog_format=mix ---- 1089CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 1090CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 1091CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO tmp_myisam1 VALUES (1); INSERT INTO tmp_myisam2 VALUES (1); END; 1092# enforce_gtid_consistency=0 gtid_mode=0 gtid_next=AUTOMATIC 1093SET GTID_NEXT = 'AUTOMATIC'; 1094[START] INSERT INTO innodb VALUES (1); 1095include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1096include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1097[END] INSERT INTO innodb VALUES (1); 1098include/assert.inc [No warning or error should be generated.] 1099include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1100include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1101ROLLBACK; 1102SET GTID_NEXT = 'AUTOMATIC'; 1103include/assert.inc [Both counters should be 0] 1104DROP TRIGGER trig; 1105DROP TEMPORARY TABLE tmp_myisam1, tmp_myisam2; 1106SET BINLOG_FORMAT = ROW; 1107CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 1108CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 1109---- InnoDB followed by temp MyISAM in one trx, binlog_format=row ---- 1110# enforce_gtid_consistency=0 gtid_mode=0 gtid_next=AUTOMATIC 1111SET GTID_NEXT = 'AUTOMATIC'; 1112BEGIN; INSERT INTO innodb VALUES (1); 1113[START] INSERT INTO tmp_myisam1 VALUES (1); 1114include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1115include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1116[END] INSERT INTO tmp_myisam1 VALUES (1); 1117include/assert.inc [No warning or error should be generated.] 1118include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1119include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1120ROLLBACK; 1121Warnings: 1122Warning 1196 Some non-transactional changed tables couldn't be rolled back 1123SET GTID_NEXT = 'AUTOMATIC'; 1124include/assert.inc [Both counters should be 0] 1125---- InnoDB and temp MyISAM in one statement, binlog_format=row ---- 1126CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO tmp_myisam1 VALUES (1); INSERT INTO tmp_myisam2 VALUES (1); END; 1127# enforce_gtid_consistency=0 gtid_mode=0 gtid_next=AUTOMATIC 1128SET GTID_NEXT = 'AUTOMATIC'; 1129[START] INSERT INTO innodb VALUES (1); 1130include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1131include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1132[END] INSERT INTO innodb VALUES (1); 1133include/assert.inc [No warning or error should be generated.] 1134include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1135include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1136ROLLBACK; 1137SET GTID_NEXT = 'AUTOMATIC'; 1138include/assert.inc [Both counters should be 0] 1139DROP TRIGGER trig; 1140DROP TEMPORARY TABLE tmp_myisam1, tmp_myisam2; 1141SET BINLOG_FORMAT = #; 1142CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 1143CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 1144SET SQL_LOG_BIN = 0; 1145---- InnoDB and MyISAM in one statement, SQL_LOG_BIN=0 ---- 1146CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO myisam1 VALUES (1); INSERT INTO myisam2 VALUES (1); END; 1147# enforce_gtid_consistency=0 gtid_mode=0 gtid_next=AUTOMATIC 1148SET GTID_NEXT = 'AUTOMATIC'; 1149[START] INSERT INTO innodb VALUES (1); 1150include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1151include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1152[END] INSERT INTO innodb VALUES (1); 1153include/assert.inc [No warning or error should be generated.] 1154include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1155include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1156ROLLBACK; 1157SET GTID_NEXT = 'AUTOMATIC'; 1158include/assert.inc [Both counters should be 0] 1159DROP TRIGGER trig; 1160---- InnoDB followed by MyISAM, in one trx, SQL_LOG_BIN=0 ---- 1161# enforce_gtid_consistency=0 gtid_mode=0 gtid_next=AUTOMATIC 1162SET GTID_NEXT = 'AUTOMATIC'; 1163BEGIN; INSERT INTO innodb VALUES (1); 1164[START] INSERT INTO myisam1 VALUES (1); 1165include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1166include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1167[END] INSERT INTO myisam1 VALUES (1); 1168include/assert.inc [No warning or error should be generated.] 1169include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1170include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1171ROLLBACK; 1172Warnings: 1173Warning 1196 Some non-transactional changed tables couldn't be rolled back 1174SET GTID_NEXT = 'AUTOMATIC'; 1175include/assert.inc [Both counters should be 0] 1176---- InnoDB and MyISAM in one statement inside trx, SQL_LOG_BIN=0 ---- 1177CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO myisam1 VALUES (1); INSERT INTO myisam2 VALUES (1); END; 1178# enforce_gtid_consistency=0 gtid_mode=0 gtid_next=AUTOMATIC 1179SET GTID_NEXT = 'AUTOMATIC'; 1180BEGIN; 1181[START] INSERT INTO innodb VALUES (1); 1182include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1183include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1184[END] INSERT INTO innodb VALUES (1); 1185include/assert.inc [No warning or error should be generated.] 1186include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1187include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1188ROLLBACK; 1189Warnings: 1190Warning 1196 Some non-transactional changed tables couldn't be rolled back 1191SET GTID_NEXT = 'AUTOMATIC'; 1192include/assert.inc [Both counters should be 0] 1193DROP TRIGGER trig; 1194SET SQL_LOG_BIN = 1; 1195DROP TABLE myisam1, myisam2, tmp_myisam1, tmp_myisam2, innodb; 1196######## ENFORCE_GTID_CONSISTENCY=OFF GTID_MODE=OFF GTID_NEXT=ANONYMOUS ######## 1197CREATE TABLE myisam1 (a INT) ENGINE = MyISAM; 1198CREATE TABLE myisam2 (a INT) ENGINE = MyISAM; 1199CREATE TABLE innodb (a INT) ENGINE = InnoDB; 1200---- MyISAM followed by MyISAM, in one 'trx' ---- 1201# enforce_gtid_consistency=0 gtid_mode=0 gtid_next=ANONYMOUS 1202SET GTID_NEXT = 'ANONYMOUS'; 1203BEGIN; INSERT INTO myisam1 VALUES (1); 1204[START] INSERT INTO myisam2 VALUES (1); 1205include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1206include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1207[END] INSERT INTO myisam2 VALUES (1); 1208include/assert.inc [No warning or error should be generated.] 1209include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1210include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1211ROLLBACK; 1212Warnings: 1213Warning 1196 Some non-transactional changed tables couldn't be rolled back 1214SET GTID_NEXT = 'AUTOMATIC'; 1215include/assert.inc [Both counters should be 0] 1216---- MyISAM and MyISAM in one statement ---- 1217CREATE TRIGGER trig BEFORE INSERT ON myisam1 FOR EACH ROW INSERT INTO myisam2 VALUES (1); 1218# enforce_gtid_consistency=0 gtid_mode=0 gtid_next=ANONYMOUS 1219SET GTID_NEXT = 'ANONYMOUS'; 1220[START] INSERT INTO myisam2 VALUES (1); 1221include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1222include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1223[END] INSERT INTO myisam2 VALUES (1); 1224include/assert.inc [No warning or error should be generated.] 1225include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1226include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1227ROLLBACK; 1228SET GTID_NEXT = 'AUTOMATIC'; 1229include/assert.inc [Both counters should be 0] 1230DROP TRIGGER trig; 1231---- MyISAM followed by InnoDB, in one 'trx' ---- 1232# enforce_gtid_consistency=0 gtid_mode=0 gtid_next=ANONYMOUS 1233SET GTID_NEXT = 'ANONYMOUS'; 1234BEGIN; INSERT INTO myisam1 VALUES (1); 1235[START] INSERT INTO innodb VALUES (1); 1236include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1237include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1238[END] INSERT INTO innodb VALUES (1); 1239include/assert.inc [No warning or error should be generated.] 1240include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1241include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1242ROLLBACK; 1243Warnings: 1244Warning 1196 Some non-transactional changed tables couldn't be rolled back 1245SET GTID_NEXT = 'AUTOMATIC'; 1246include/assert.inc [Both counters should be 0] 1247SET SESSION BINLOG_FORMAT = MIXED; 1248---- InnoDB followed by temp MyISAM in one trx, binlog_format=mix ---- 1249CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 1250# enforce_gtid_consistency=0 gtid_mode=0 gtid_next=ANONYMOUS 1251SET GTID_NEXT = 'ANONYMOUS'; 1252BEGIN; INSERT INTO innodb VALUES (1); 1253[START] INSERT INTO tmp_myisam1 VALUES (1); 1254include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1255include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1256[END] INSERT INTO tmp_myisam1 VALUES (1); 1257include/assert.inc [No warning or error should be generated.] 1258include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1259include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1260ROLLBACK; 1261Warnings: 1262Warning 1196 Some non-transactional changed tables couldn't be rolled back 1263SET GTID_NEXT = 'AUTOMATIC'; 1264include/assert.inc [Both counters should be 0] 1265DROP TEMPORARY TABLE tmp_myisam1; 1266---- InnoDB and temp MyISAM in one autocommit statement, binlog_format=mix ---- 1267CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 1268CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 1269CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO tmp_myisam1 VALUES (1); INSERT INTO tmp_myisam2 VALUES (1); END; 1270# enforce_gtid_consistency=0 gtid_mode=0 gtid_next=ANONYMOUS 1271SET GTID_NEXT = 'ANONYMOUS'; 1272[START] INSERT INTO innodb VALUES (1); 1273include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1274include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1275[END] INSERT INTO innodb VALUES (1); 1276include/assert.inc [No warning or error should be generated.] 1277include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1278include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1279ROLLBACK; 1280SET GTID_NEXT = 'AUTOMATIC'; 1281include/assert.inc [Both counters should be 0] 1282DROP TRIGGER trig; 1283DROP TEMPORARY TABLE tmp_myisam1, tmp_myisam2; 1284SET BINLOG_FORMAT = ROW; 1285CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 1286CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 1287---- InnoDB followed by temp MyISAM in one trx, binlog_format=row ---- 1288# enforce_gtid_consistency=0 gtid_mode=0 gtid_next=ANONYMOUS 1289SET GTID_NEXT = 'ANONYMOUS'; 1290BEGIN; INSERT INTO innodb VALUES (1); 1291[START] INSERT INTO tmp_myisam1 VALUES (1); 1292include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1293include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1294[END] INSERT INTO tmp_myisam1 VALUES (1); 1295include/assert.inc [No warning or error should be generated.] 1296include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1297include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1298ROLLBACK; 1299Warnings: 1300Warning 1196 Some non-transactional changed tables couldn't be rolled back 1301SET GTID_NEXT = 'AUTOMATIC'; 1302include/assert.inc [Both counters should be 0] 1303---- InnoDB and temp MyISAM in one statement, binlog_format=row ---- 1304CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO tmp_myisam1 VALUES (1); INSERT INTO tmp_myisam2 VALUES (1); END; 1305# enforce_gtid_consistency=0 gtid_mode=0 gtid_next=ANONYMOUS 1306SET GTID_NEXT = 'ANONYMOUS'; 1307[START] INSERT INTO innodb VALUES (1); 1308include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1309include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1310[END] INSERT INTO innodb VALUES (1); 1311include/assert.inc [No warning or error should be generated.] 1312include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1313include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1314ROLLBACK; 1315SET GTID_NEXT = 'AUTOMATIC'; 1316include/assert.inc [Both counters should be 0] 1317DROP TRIGGER trig; 1318DROP TEMPORARY TABLE tmp_myisam1, tmp_myisam2; 1319SET BINLOG_FORMAT = #; 1320CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 1321CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 1322SET SQL_LOG_BIN = 0; 1323---- InnoDB and MyISAM in one statement, SQL_LOG_BIN=0 ---- 1324CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO myisam1 VALUES (1); INSERT INTO myisam2 VALUES (1); END; 1325# enforce_gtid_consistency=0 gtid_mode=0 gtid_next=ANONYMOUS 1326SET GTID_NEXT = 'ANONYMOUS'; 1327[START] INSERT INTO innodb VALUES (1); 1328include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1329include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1330[END] INSERT INTO innodb VALUES (1); 1331include/assert.inc [No warning or error should be generated.] 1332include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1333include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1334ROLLBACK; 1335SET GTID_NEXT = 'AUTOMATIC'; 1336include/assert.inc [Both counters should be 0] 1337DROP TRIGGER trig; 1338---- InnoDB followed by MyISAM, in one trx, SQL_LOG_BIN=0 ---- 1339# enforce_gtid_consistency=0 gtid_mode=0 gtid_next=ANONYMOUS 1340SET GTID_NEXT = 'ANONYMOUS'; 1341BEGIN; INSERT INTO innodb VALUES (1); 1342[START] INSERT INTO myisam1 VALUES (1); 1343include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1344include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1345[END] INSERT INTO myisam1 VALUES (1); 1346include/assert.inc [No warning or error should be generated.] 1347include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1348include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1349ROLLBACK; 1350Warnings: 1351Warning 1196 Some non-transactional changed tables couldn't be rolled back 1352SET GTID_NEXT = 'AUTOMATIC'; 1353include/assert.inc [Both counters should be 0] 1354---- InnoDB and MyISAM in one statement inside trx, SQL_LOG_BIN=0 ---- 1355CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO myisam1 VALUES (1); INSERT INTO myisam2 VALUES (1); END; 1356# enforce_gtid_consistency=0 gtid_mode=0 gtid_next=ANONYMOUS 1357SET GTID_NEXT = 'ANONYMOUS'; 1358BEGIN; 1359[START] INSERT INTO innodb VALUES (1); 1360include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1361include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1362[END] INSERT INTO innodb VALUES (1); 1363include/assert.inc [No warning or error should be generated.] 1364include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1365include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1366ROLLBACK; 1367Warnings: 1368Warning 1196 Some non-transactional changed tables couldn't be rolled back 1369SET GTID_NEXT = 'AUTOMATIC'; 1370include/assert.inc [Both counters should be 0] 1371DROP TRIGGER trig; 1372SET SQL_LOG_BIN = 1; 1373DROP TABLE myisam1, myisam2, tmp_myisam1, tmp_myisam2, innodb; 1374SET GLOBAL ENFORCE_GTID_CONSISTENCY = 1; 1375SET GLOBAL GTID_MODE = OFF_PERMISSIVE; 1376SET GLOBAL GTID_MODE = ON_PERMISSIVE; 1377SET GLOBAL GTID_MODE = ON; 1378SET GLOBAL GTID_MODE = 3; 1379######## ENFORCE_GTID_CONSISTENCY=ERROR GTID_MODE=ON GTID_NEXT=AUTOMATIC ######## 1380CREATE TABLE myisam1 (a INT) ENGINE = MyISAM; 1381CREATE TABLE myisam2 (a INT) ENGINE = MyISAM; 1382CREATE TABLE innodb (a INT) ENGINE = InnoDB; 1383---- MyISAM followed by MyISAM, in one 'trx' ---- 1384# enforce_gtid_consistency=1 gtid_mode=3 gtid_next=AUTOMATIC 1385SET GTID_NEXT = 'AUTOMATIC'; 1386BEGIN; INSERT INTO myisam1 VALUES (1); 1387[START] INSERT INTO myisam2 VALUES (1); 1388include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1389include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1390[END] INSERT INTO myisam2 VALUES (1); 1391include/assert.inc [No warning or error should be generated.] 1392include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1393include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1394ROLLBACK; 1395Warnings: 1396Warning 1196 Some non-transactional changed tables couldn't be rolled back 1397SET GTID_NEXT = 'AUTOMATIC'; 1398include/assert.inc [Both counters should be 0] 1399---- MyISAM and MyISAM in one statement ---- 1400CREATE TRIGGER trig BEFORE INSERT ON myisam1 FOR EACH ROW INSERT INTO myisam2 VALUES (1); 1401# enforce_gtid_consistency=1 gtid_mode=3 gtid_next=AUTOMATIC 1402SET GTID_NEXT = 'AUTOMATIC'; 1403[START] INSERT INTO myisam2 VALUES (1); 1404include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1405include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1406[END] INSERT INTO myisam2 VALUES (1); 1407include/assert.inc [No warning or error should be generated.] 1408include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1409include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1410ROLLBACK; 1411SET GTID_NEXT = 'AUTOMATIC'; 1412include/assert.inc [Both counters should be 0] 1413DROP TRIGGER trig; 1414---- MyISAM followed by InnoDB, in one 'trx' ---- 1415# enforce_gtid_consistency=1 gtid_mode=3 gtid_next=AUTOMATIC 1416SET GTID_NEXT = 'AUTOMATIC'; 1417BEGIN; INSERT INTO myisam1 VALUES (1); 1418[START] INSERT INTO innodb VALUES (1); 1419include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1420include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1421[END] INSERT INTO innodb VALUES (1); 1422include/assert.inc [No warning or error should be generated.] 1423include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1424include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1425ROLLBACK; 1426Warnings: 1427Warning 1196 Some non-transactional changed tables couldn't be rolled back 1428SET GTID_NEXT = 'AUTOMATIC'; 1429include/assert.inc [Both counters should be 0] 1430SET SESSION BINLOG_FORMAT = MIXED; 1431---- InnoDB followed by temp MyISAM in one trx, binlog_format=mix ---- 1432CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 1433# enforce_gtid_consistency=1 gtid_mode=3 gtid_next=AUTOMATIC 1434SET GTID_NEXT = 'AUTOMATIC'; 1435BEGIN; INSERT INTO innodb VALUES (1); 1436[START] INSERT INTO tmp_myisam1 VALUES (1); 1437include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1438include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1439[END] INSERT INTO tmp_myisam1 VALUES (1); 1440include/assert.inc [No warning or error should be generated.] 1441include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1442include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1443ROLLBACK; 1444Warnings: 1445Warning 1196 Some non-transactional changed tables couldn't be rolled back 1446SET GTID_NEXT = 'AUTOMATIC'; 1447include/assert.inc [Both counters should be 0] 1448DROP TEMPORARY TABLE tmp_myisam1; 1449---- InnoDB and temp MyISAM in one autocommit statement, binlog_format=mix ---- 1450CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 1451CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 1452CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO tmp_myisam1 VALUES (1); INSERT INTO tmp_myisam2 VALUES (1); END; 1453# enforce_gtid_consistency=1 gtid_mode=3 gtid_next=AUTOMATIC 1454SET GTID_NEXT = 'AUTOMATIC'; 1455[START] INSERT INTO innodb VALUES (1); 1456include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1457include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1458[END] INSERT INTO innodb VALUES (1); 1459include/assert.inc [No warning or error should be generated.] 1460include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1461include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1462ROLLBACK; 1463SET GTID_NEXT = 'AUTOMATIC'; 1464include/assert.inc [Both counters should be 0] 1465DROP TRIGGER trig; 1466DROP TEMPORARY TABLE tmp_myisam1, tmp_myisam2; 1467SET BINLOG_FORMAT = ROW; 1468CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 1469CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 1470---- InnoDB followed by temp MyISAM in one trx, binlog_format=row ---- 1471# enforce_gtid_consistency=1 gtid_mode=3 gtid_next=AUTOMATIC 1472SET GTID_NEXT = 'AUTOMATIC'; 1473BEGIN; INSERT INTO innodb VALUES (1); 1474[START] INSERT INTO tmp_myisam1 VALUES (1); 1475include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1476include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1477[END] INSERT INTO tmp_myisam1 VALUES (1); 1478include/assert.inc [No warning or error should be generated.] 1479include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1480include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1481ROLLBACK; 1482Warnings: 1483Warning 1196 Some non-transactional changed tables couldn't be rolled back 1484SET GTID_NEXT = 'AUTOMATIC'; 1485include/assert.inc [Both counters should be 0] 1486---- InnoDB and temp MyISAM in one statement, binlog_format=row ---- 1487CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO tmp_myisam1 VALUES (1); INSERT INTO tmp_myisam2 VALUES (1); END; 1488# enforce_gtid_consistency=1 gtid_mode=3 gtid_next=AUTOMATIC 1489SET GTID_NEXT = 'AUTOMATIC'; 1490[START] INSERT INTO innodb VALUES (1); 1491include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1492include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1493[END] INSERT INTO innodb VALUES (1); 1494include/assert.inc [No warning or error should be generated.] 1495include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1496include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1497ROLLBACK; 1498SET GTID_NEXT = 'AUTOMATIC'; 1499include/assert.inc [Both counters should be 0] 1500DROP TRIGGER trig; 1501DROP TEMPORARY TABLE tmp_myisam1, tmp_myisam2; 1502SET BINLOG_FORMAT = #; 1503CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 1504CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 1505SET SQL_LOG_BIN = 0; 1506---- InnoDB and MyISAM in one statement, SQL_LOG_BIN=0 ---- 1507CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO myisam1 VALUES (1); INSERT INTO myisam2 VALUES (1); END; 1508# enforce_gtid_consistency=1 gtid_mode=3 gtid_next=AUTOMATIC 1509SET GTID_NEXT = 'AUTOMATIC'; 1510[START] INSERT INTO innodb VALUES (1); 1511include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1512include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1513[END] INSERT INTO innodb VALUES (1); 1514include/assert.inc [No warning or error should be generated.] 1515include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1516include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1517ROLLBACK; 1518SET GTID_NEXT = 'AUTOMATIC'; 1519include/assert.inc [Both counters should be 0] 1520DROP TRIGGER trig; 1521---- InnoDB followed by MyISAM, in one trx, SQL_LOG_BIN=0 ---- 1522# enforce_gtid_consistency=1 gtid_mode=3 gtid_next=AUTOMATIC 1523SET GTID_NEXT = 'AUTOMATIC'; 1524BEGIN; INSERT INTO innodb VALUES (1); 1525[START] INSERT INTO myisam1 VALUES (1); 1526include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1527include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1528[END] INSERT INTO myisam1 VALUES (1); 1529include/assert.inc [No warning or error should be generated.] 1530include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1531include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1532ROLLBACK; 1533Warnings: 1534Warning 1196 Some non-transactional changed tables couldn't be rolled back 1535SET GTID_NEXT = 'AUTOMATIC'; 1536include/assert.inc [Both counters should be 0] 1537---- InnoDB and MyISAM in one statement inside trx, SQL_LOG_BIN=0 ---- 1538CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO myisam1 VALUES (1); INSERT INTO myisam2 VALUES (1); END; 1539# enforce_gtid_consistency=1 gtid_mode=3 gtid_next=AUTOMATIC 1540SET GTID_NEXT = 'AUTOMATIC'; 1541BEGIN; 1542[START] INSERT INTO innodb VALUES (1); 1543include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1544include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1545[END] INSERT INTO innodb VALUES (1); 1546include/assert.inc [No warning or error should be generated.] 1547include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1548include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1549ROLLBACK; 1550Warnings: 1551Warning 1196 Some non-transactional changed tables couldn't be rolled back 1552SET GTID_NEXT = 'AUTOMATIC'; 1553include/assert.inc [Both counters should be 0] 1554DROP TRIGGER trig; 1555SET SQL_LOG_BIN = 1; 1556DROP TABLE myisam1, myisam2, tmp_myisam1, tmp_myisam2, innodb; 1557######## ENFORCE_GTID_CONSISTENCY=ERROR GTID_MODE=ON GTID_NEXT=GTID ######## 1558CREATE TABLE myisam1 (a INT) ENGINE = MyISAM; 1559CREATE TABLE myisam2 (a INT) ENGINE = MyISAM; 1560CREATE TABLE innodb (a INT) ENGINE = InnoDB; 1561---- MyISAM and MyISAM in one statement ---- 1562CREATE TRIGGER trig BEFORE INSERT ON myisam1 FOR EACH ROW INSERT INTO myisam2 VALUES (1); 1563# enforce_gtid_consistency=1 gtid_mode=3 gtid_next=GTID 1564SET GTID_NEXT = 'GTID'; 1565[START] INSERT INTO myisam2 VALUES (1); 1566include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1567include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1568[END] INSERT INTO myisam2 VALUES (1); 1569include/assert.inc [No warning or error should be generated.] 1570include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1571include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1572ROLLBACK; 1573SET GTID_NEXT = 'AUTOMATIC'; 1574include/assert.inc [Both counters should be 0] 1575DROP TRIGGER trig; 1576SET SESSION BINLOG_FORMAT = MIXED; 1577---- InnoDB followed by temp MyISAM in one trx, binlog_format=mix ---- 1578CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 1579# enforce_gtid_consistency=1 gtid_mode=3 gtid_next=GTID 1580SET GTID_NEXT = 'GTID'; 1581BEGIN; INSERT INTO innodb VALUES (1); 1582[START] INSERT INTO tmp_myisam1 VALUES (1); 1583include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1584include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1585[END] INSERT INTO tmp_myisam1 VALUES (1); 1586include/assert.inc [No warning or error should be generated.] 1587include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1588include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1589ROLLBACK; 1590Warnings: 1591Warning 1196 Some non-transactional changed tables couldn't be rolled back 1592SET GTID_NEXT = 'AUTOMATIC'; 1593include/assert.inc [Both counters should be 0] 1594DROP TEMPORARY TABLE tmp_myisam1; 1595---- InnoDB and temp MyISAM in one autocommit statement, binlog_format=mix ---- 1596CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 1597CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 1598CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO tmp_myisam1 VALUES (1); INSERT INTO tmp_myisam2 VALUES (1); END; 1599# enforce_gtid_consistency=1 gtid_mode=3 gtid_next=GTID 1600SET GTID_NEXT = 'GTID'; 1601[START] INSERT INTO innodb VALUES (1); 1602include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1603include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1604[END] INSERT INTO innodb VALUES (1); 1605include/assert.inc [No warning or error should be generated.] 1606include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1607include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1608ROLLBACK; 1609SET GTID_NEXT = 'AUTOMATIC'; 1610include/assert.inc [Both counters should be 0] 1611DROP TRIGGER trig; 1612DROP TEMPORARY TABLE tmp_myisam1, tmp_myisam2; 1613SET BINLOG_FORMAT = ROW; 1614CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 1615CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 1616---- InnoDB followed by temp MyISAM in one trx, binlog_format=row ---- 1617# enforce_gtid_consistency=1 gtid_mode=3 gtid_next=GTID 1618SET GTID_NEXT = 'GTID'; 1619BEGIN; INSERT INTO innodb VALUES (1); 1620[START] INSERT INTO tmp_myisam1 VALUES (1); 1621include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1622include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1623[END] INSERT INTO tmp_myisam1 VALUES (1); 1624include/assert.inc [No warning or error should be generated.] 1625include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1626include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1627ROLLBACK; 1628Warnings: 1629Warning 1196 Some non-transactional changed tables couldn't be rolled back 1630SET GTID_NEXT = 'AUTOMATIC'; 1631include/assert.inc [Both counters should be 0] 1632---- InnoDB and temp MyISAM in one statement, binlog_format=row ---- 1633CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO tmp_myisam1 VALUES (1); INSERT INTO tmp_myisam2 VALUES (1); END; 1634# enforce_gtid_consistency=1 gtid_mode=3 gtid_next=GTID 1635SET GTID_NEXT = 'GTID'; 1636[START] INSERT INTO innodb VALUES (1); 1637include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1638include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1639[END] INSERT INTO innodb VALUES (1); 1640include/assert.inc [No warning or error should be generated.] 1641include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1642include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1643ROLLBACK; 1644SET GTID_NEXT = 'AUTOMATIC'; 1645include/assert.inc [Both counters should be 0] 1646DROP TRIGGER trig; 1647DROP TEMPORARY TABLE tmp_myisam1, tmp_myisam2; 1648SET BINLOG_FORMAT = #; 1649CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 1650CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 1651SET SQL_LOG_BIN = 0; 1652---- InnoDB and MyISAM in one statement, SQL_LOG_BIN=0 ---- 1653CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO myisam1 VALUES (1); INSERT INTO myisam2 VALUES (1); END; 1654# enforce_gtid_consistency=1 gtid_mode=3 gtid_next=GTID 1655SET GTID_NEXT = 'GTID'; 1656[START] INSERT INTO innodb VALUES (1); 1657include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1658include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1659[END] INSERT INTO innodb VALUES (1); 1660include/assert.inc [No warning or error should be generated.] 1661include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1662include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1663ROLLBACK; 1664SET GTID_NEXT = 'AUTOMATIC'; 1665include/assert.inc [Both counters should be 0] 1666DROP TRIGGER trig; 1667---- InnoDB followed by MyISAM, in one trx, SQL_LOG_BIN=0 ---- 1668# enforce_gtid_consistency=1 gtid_mode=3 gtid_next=GTID 1669SET GTID_NEXT = 'GTID'; 1670BEGIN; INSERT INTO innodb VALUES (1); 1671[START] INSERT INTO myisam1 VALUES (1); 1672include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1673include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1674[END] INSERT INTO myisam1 VALUES (1); 1675include/assert.inc [No warning or error should be generated.] 1676include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1677include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1678ROLLBACK; 1679Warnings: 1680Warning 1196 Some non-transactional changed tables couldn't be rolled back 1681SET GTID_NEXT = 'AUTOMATIC'; 1682include/assert.inc [Both counters should be 0] 1683---- InnoDB and MyISAM in one statement inside trx, SQL_LOG_BIN=0 ---- 1684CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO myisam1 VALUES (1); INSERT INTO myisam2 VALUES (1); END; 1685# enforce_gtid_consistency=1 gtid_mode=3 gtid_next=GTID 1686SET GTID_NEXT = 'GTID'; 1687BEGIN; 1688[START] INSERT INTO innodb VALUES (1); 1689include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1690include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1691[END] INSERT INTO innodb VALUES (1); 1692include/assert.inc [No warning or error should be generated.] 1693include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1694include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1695ROLLBACK; 1696Warnings: 1697Warning 1196 Some non-transactional changed tables couldn't be rolled back 1698SET GTID_NEXT = 'AUTOMATIC'; 1699include/assert.inc [Both counters should be 0] 1700DROP TRIGGER trig; 1701SET SQL_LOG_BIN = 1; 1702DROP TABLE myisam1, myisam2, tmp_myisam1, tmp_myisam2, innodb; 1703SET GLOBAL GTID_MODE = 2; 1704######## ENFORCE_GTID_CONSISTENCY=ERROR GTID_MODE=ON_PERMISSIVE GTID_NEXT=AUTOMATIC ######## 1705CREATE TABLE myisam1 (a INT) ENGINE = MyISAM; 1706CREATE TABLE myisam2 (a INT) ENGINE = MyISAM; 1707CREATE TABLE innodb (a INT) ENGINE = InnoDB; 1708---- MyISAM followed by MyISAM, in one 'trx' ---- 1709# enforce_gtid_consistency=1 gtid_mode=2 gtid_next=AUTOMATIC 1710SET GTID_NEXT = 'AUTOMATIC'; 1711BEGIN; INSERT INTO myisam1 VALUES (1); 1712[START] INSERT INTO myisam2 VALUES (1); 1713include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1714include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1715[END] INSERT INTO myisam2 VALUES (1); 1716include/assert.inc [No warning or error should be generated.] 1717include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1718include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1719ROLLBACK; 1720Warnings: 1721Warning 1196 Some non-transactional changed tables couldn't be rolled back 1722SET GTID_NEXT = 'AUTOMATIC'; 1723include/assert.inc [Both counters should be 0] 1724---- MyISAM and MyISAM in one statement ---- 1725CREATE TRIGGER trig BEFORE INSERT ON myisam1 FOR EACH ROW INSERT INTO myisam2 VALUES (1); 1726# enforce_gtid_consistency=1 gtid_mode=2 gtid_next=AUTOMATIC 1727SET GTID_NEXT = 'AUTOMATIC'; 1728[START] INSERT INTO myisam2 VALUES (1); 1729include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1730include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1731[END] INSERT INTO myisam2 VALUES (1); 1732include/assert.inc [No warning or error should be generated.] 1733include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1734include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1735ROLLBACK; 1736SET GTID_NEXT = 'AUTOMATIC'; 1737include/assert.inc [Both counters should be 0] 1738DROP TRIGGER trig; 1739---- MyISAM followed by InnoDB, in one 'trx' ---- 1740# enforce_gtid_consistency=1 gtid_mode=2 gtid_next=AUTOMATIC 1741SET GTID_NEXT = 'AUTOMATIC'; 1742BEGIN; INSERT INTO myisam1 VALUES (1); 1743[START] INSERT INTO innodb VALUES (1); 1744include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1745include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1746[END] INSERT INTO innodb VALUES (1); 1747include/assert.inc [No warning or error should be generated.] 1748include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1749include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1750ROLLBACK; 1751Warnings: 1752Warning 1196 Some non-transactional changed tables couldn't be rolled back 1753SET GTID_NEXT = 'AUTOMATIC'; 1754include/assert.inc [Both counters should be 0] 1755SET SESSION BINLOG_FORMAT = MIXED; 1756---- InnoDB followed by temp MyISAM in one trx, binlog_format=mix ---- 1757CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 1758# enforce_gtid_consistency=1 gtid_mode=2 gtid_next=AUTOMATIC 1759SET GTID_NEXT = 'AUTOMATIC'; 1760BEGIN; INSERT INTO innodb VALUES (1); 1761[START] INSERT INTO tmp_myisam1 VALUES (1); 1762include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1763include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1764[END] INSERT INTO tmp_myisam1 VALUES (1); 1765include/assert.inc [No warning or error should be generated.] 1766include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1767include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1768ROLLBACK; 1769Warnings: 1770Warning 1196 Some non-transactional changed tables couldn't be rolled back 1771SET GTID_NEXT = 'AUTOMATIC'; 1772include/assert.inc [Both counters should be 0] 1773DROP TEMPORARY TABLE tmp_myisam1; 1774---- InnoDB and temp MyISAM in one autocommit statement, binlog_format=mix ---- 1775CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 1776CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 1777CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO tmp_myisam1 VALUES (1); INSERT INTO tmp_myisam2 VALUES (1); END; 1778# enforce_gtid_consistency=1 gtid_mode=2 gtid_next=AUTOMATIC 1779SET GTID_NEXT = 'AUTOMATIC'; 1780[START] INSERT INTO innodb VALUES (1); 1781include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1782include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1783[END] INSERT INTO innodb VALUES (1); 1784include/assert.inc [No warning or error should be generated.] 1785include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1786include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1787ROLLBACK; 1788SET GTID_NEXT = 'AUTOMATIC'; 1789include/assert.inc [Both counters should be 0] 1790DROP TRIGGER trig; 1791DROP TEMPORARY TABLE tmp_myisam1, tmp_myisam2; 1792SET BINLOG_FORMAT = ROW; 1793CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 1794CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 1795---- InnoDB followed by temp MyISAM in one trx, binlog_format=row ---- 1796# enforce_gtid_consistency=1 gtid_mode=2 gtid_next=AUTOMATIC 1797SET GTID_NEXT = 'AUTOMATIC'; 1798BEGIN; INSERT INTO innodb VALUES (1); 1799[START] INSERT INTO tmp_myisam1 VALUES (1); 1800include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1801include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1802[END] INSERT INTO tmp_myisam1 VALUES (1); 1803include/assert.inc [No warning or error should be generated.] 1804include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1805include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1806ROLLBACK; 1807Warnings: 1808Warning 1196 Some non-transactional changed tables couldn't be rolled back 1809SET GTID_NEXT = 'AUTOMATIC'; 1810include/assert.inc [Both counters should be 0] 1811---- InnoDB and temp MyISAM in one statement, binlog_format=row ---- 1812CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO tmp_myisam1 VALUES (1); INSERT INTO tmp_myisam2 VALUES (1); END; 1813# enforce_gtid_consistency=1 gtid_mode=2 gtid_next=AUTOMATIC 1814SET GTID_NEXT = 'AUTOMATIC'; 1815[START] INSERT INTO innodb VALUES (1); 1816include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1817include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1818[END] INSERT INTO innodb VALUES (1); 1819include/assert.inc [No warning or error should be generated.] 1820include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1821include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1822ROLLBACK; 1823SET GTID_NEXT = 'AUTOMATIC'; 1824include/assert.inc [Both counters should be 0] 1825DROP TRIGGER trig; 1826DROP TEMPORARY TABLE tmp_myisam1, tmp_myisam2; 1827SET BINLOG_FORMAT = #; 1828CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 1829CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 1830SET SQL_LOG_BIN = 0; 1831---- InnoDB and MyISAM in one statement, SQL_LOG_BIN=0 ---- 1832CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO myisam1 VALUES (1); INSERT INTO myisam2 VALUES (1); END; 1833# enforce_gtid_consistency=1 gtid_mode=2 gtid_next=AUTOMATIC 1834SET GTID_NEXT = 'AUTOMATIC'; 1835[START] INSERT INTO innodb VALUES (1); 1836include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1837include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1838[END] INSERT INTO innodb VALUES (1); 1839include/assert.inc [No warning or error should be generated.] 1840include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1841include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1842ROLLBACK; 1843SET GTID_NEXT = 'AUTOMATIC'; 1844include/assert.inc [Both counters should be 0] 1845DROP TRIGGER trig; 1846---- InnoDB followed by MyISAM, in one trx, SQL_LOG_BIN=0 ---- 1847# enforce_gtid_consistency=1 gtid_mode=2 gtid_next=AUTOMATIC 1848SET GTID_NEXT = 'AUTOMATIC'; 1849BEGIN; INSERT INTO innodb VALUES (1); 1850[START] INSERT INTO myisam1 VALUES (1); 1851include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1852include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1853[END] INSERT INTO myisam1 VALUES (1); 1854include/assert.inc [No warning or error should be generated.] 1855include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1856include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1857ROLLBACK; 1858Warnings: 1859Warning 1196 Some non-transactional changed tables couldn't be rolled back 1860SET GTID_NEXT = 'AUTOMATIC'; 1861include/assert.inc [Both counters should be 0] 1862---- InnoDB and MyISAM in one statement inside trx, SQL_LOG_BIN=0 ---- 1863CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO myisam1 VALUES (1); INSERT INTO myisam2 VALUES (1); END; 1864# enforce_gtid_consistency=1 gtid_mode=2 gtid_next=AUTOMATIC 1865SET GTID_NEXT = 'AUTOMATIC'; 1866BEGIN; 1867[START] INSERT INTO innodb VALUES (1); 1868include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1869include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1870[END] INSERT INTO innodb VALUES (1); 1871include/assert.inc [No warning or error should be generated.] 1872include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1873include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1874ROLLBACK; 1875Warnings: 1876Warning 1196 Some non-transactional changed tables couldn't be rolled back 1877SET GTID_NEXT = 'AUTOMATIC'; 1878include/assert.inc [Both counters should be 0] 1879DROP TRIGGER trig; 1880SET SQL_LOG_BIN = 1; 1881DROP TABLE myisam1, myisam2, tmp_myisam1, tmp_myisam2, innodb; 1882######## ENFORCE_GTID_CONSISTENCY=ERROR GTID_MODE=ON_PERMISSIVE GTID_NEXT=ANONYMOUS ######## 1883CREATE TABLE myisam1 (a INT) ENGINE = MyISAM; 1884CREATE TABLE myisam2 (a INT) ENGINE = MyISAM; 1885CREATE TABLE innodb (a INT) ENGINE = InnoDB; 1886---- MyISAM followed by MyISAM, in one 'trx' ---- 1887# enforce_gtid_consistency=1 gtid_mode=2 gtid_next=ANONYMOUS 1888SET GTID_NEXT = 'ANONYMOUS'; 1889BEGIN; INSERT INTO myisam1 VALUES (1); 1890[START] INSERT INTO myisam2 VALUES (1); 1891include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1892include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1893[END] INSERT INTO myisam2 VALUES (1); 1894include/assert.inc [No warning or error should be generated.] 1895include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1896include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1897ROLLBACK; 1898Warnings: 1899Warning 1196 Some non-transactional changed tables couldn't be rolled back 1900SET GTID_NEXT = 'AUTOMATIC'; 1901include/assert.inc [Both counters should be 0] 1902---- MyISAM and MyISAM in one statement ---- 1903CREATE TRIGGER trig BEFORE INSERT ON myisam1 FOR EACH ROW INSERT INTO myisam2 VALUES (1); 1904# enforce_gtid_consistency=1 gtid_mode=2 gtid_next=ANONYMOUS 1905SET GTID_NEXT = 'ANONYMOUS'; 1906[START] INSERT INTO myisam2 VALUES (1); 1907include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1908include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1909[END] INSERT INTO myisam2 VALUES (1); 1910include/assert.inc [No warning or error should be generated.] 1911include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1912include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1913ROLLBACK; 1914SET GTID_NEXT = 'AUTOMATIC'; 1915include/assert.inc [Both counters should be 0] 1916DROP TRIGGER trig; 1917---- MyISAM followed by InnoDB, in one 'trx' ---- 1918# enforce_gtid_consistency=1 gtid_mode=2 gtid_next=ANONYMOUS 1919SET GTID_NEXT = 'ANONYMOUS'; 1920BEGIN; INSERT INTO myisam1 VALUES (1); 1921[START] INSERT INTO innodb VALUES (1); 1922include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1923include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1924[END] INSERT INTO innodb VALUES (1); 1925include/assert.inc [No warning or error should be generated.] 1926include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1927include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1928ROLLBACK; 1929Warnings: 1930Warning 1196 Some non-transactional changed tables couldn't be rolled back 1931SET GTID_NEXT = 'AUTOMATIC'; 1932include/assert.inc [Both counters should be 0] 1933SET SESSION BINLOG_FORMAT = MIXED; 1934---- InnoDB followed by temp MyISAM in one trx, binlog_format=mix ---- 1935CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 1936# enforce_gtid_consistency=1 gtid_mode=2 gtid_next=ANONYMOUS 1937SET GTID_NEXT = 'ANONYMOUS'; 1938BEGIN; INSERT INTO innodb VALUES (1); 1939[START] INSERT INTO tmp_myisam1 VALUES (1); 1940include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1941include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1942[END] INSERT INTO tmp_myisam1 VALUES (1); 1943include/assert.inc [No warning or error should be generated.] 1944include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1945include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1946ROLLBACK; 1947Warnings: 1948Warning 1196 Some non-transactional changed tables couldn't be rolled back 1949SET GTID_NEXT = 'AUTOMATIC'; 1950include/assert.inc [Both counters should be 0] 1951DROP TEMPORARY TABLE tmp_myisam1; 1952---- InnoDB and temp MyISAM in one autocommit statement, binlog_format=mix ---- 1953CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 1954CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 1955CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO tmp_myisam1 VALUES (1); INSERT INTO tmp_myisam2 VALUES (1); END; 1956# enforce_gtid_consistency=1 gtid_mode=2 gtid_next=ANONYMOUS 1957SET GTID_NEXT = 'ANONYMOUS'; 1958[START] INSERT INTO innodb VALUES (1); 1959include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1960include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1961[END] INSERT INTO innodb VALUES (1); 1962include/assert.inc [No warning or error should be generated.] 1963include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1964include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1965ROLLBACK; 1966SET GTID_NEXT = 'AUTOMATIC'; 1967include/assert.inc [Both counters should be 0] 1968DROP TRIGGER trig; 1969DROP TEMPORARY TABLE tmp_myisam1, tmp_myisam2; 1970SET BINLOG_FORMAT = ROW; 1971CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 1972CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 1973---- InnoDB followed by temp MyISAM in one trx, binlog_format=row ---- 1974# enforce_gtid_consistency=1 gtid_mode=2 gtid_next=ANONYMOUS 1975SET GTID_NEXT = 'ANONYMOUS'; 1976BEGIN; INSERT INTO innodb VALUES (1); 1977[START] INSERT INTO tmp_myisam1 VALUES (1); 1978include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1979include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1980[END] INSERT INTO tmp_myisam1 VALUES (1); 1981include/assert.inc [No warning or error should be generated.] 1982include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1983include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1984ROLLBACK; 1985Warnings: 1986Warning 1196 Some non-transactional changed tables couldn't be rolled back 1987SET GTID_NEXT = 'AUTOMATIC'; 1988include/assert.inc [Both counters should be 0] 1989---- InnoDB and temp MyISAM in one statement, binlog_format=row ---- 1990CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO tmp_myisam1 VALUES (1); INSERT INTO tmp_myisam2 VALUES (1); END; 1991# enforce_gtid_consistency=1 gtid_mode=2 gtid_next=ANONYMOUS 1992SET GTID_NEXT = 'ANONYMOUS'; 1993[START] INSERT INTO innodb VALUES (1); 1994include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1995include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1996[END] INSERT INTO innodb VALUES (1); 1997include/assert.inc [No warning or error should be generated.] 1998include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 1999include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2000ROLLBACK; 2001SET GTID_NEXT = 'AUTOMATIC'; 2002include/assert.inc [Both counters should be 0] 2003DROP TRIGGER trig; 2004DROP TEMPORARY TABLE tmp_myisam1, tmp_myisam2; 2005SET BINLOG_FORMAT = #; 2006CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 2007CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 2008SET SQL_LOG_BIN = 0; 2009---- InnoDB and MyISAM in one statement, SQL_LOG_BIN=0 ---- 2010CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO myisam1 VALUES (1); INSERT INTO myisam2 VALUES (1); END; 2011# enforce_gtid_consistency=1 gtid_mode=2 gtid_next=ANONYMOUS 2012SET GTID_NEXT = 'ANONYMOUS'; 2013[START] INSERT INTO innodb VALUES (1); 2014include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2015include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2016[END] INSERT INTO innodb VALUES (1); 2017include/assert.inc [No warning or error should be generated.] 2018include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2019include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2020ROLLBACK; 2021SET GTID_NEXT = 'AUTOMATIC'; 2022include/assert.inc [Both counters should be 0] 2023DROP TRIGGER trig; 2024---- InnoDB followed by MyISAM, in one trx, SQL_LOG_BIN=0 ---- 2025# enforce_gtid_consistency=1 gtid_mode=2 gtid_next=ANONYMOUS 2026SET GTID_NEXT = 'ANONYMOUS'; 2027BEGIN; INSERT INTO innodb VALUES (1); 2028[START] INSERT INTO myisam1 VALUES (1); 2029include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2030include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2031[END] INSERT INTO myisam1 VALUES (1); 2032include/assert.inc [No warning or error should be generated.] 2033include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2034include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2035ROLLBACK; 2036Warnings: 2037Warning 1196 Some non-transactional changed tables couldn't be rolled back 2038SET GTID_NEXT = 'AUTOMATIC'; 2039include/assert.inc [Both counters should be 0] 2040---- InnoDB and MyISAM in one statement inside trx, SQL_LOG_BIN=0 ---- 2041CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO myisam1 VALUES (1); INSERT INTO myisam2 VALUES (1); END; 2042# enforce_gtid_consistency=1 gtid_mode=2 gtid_next=ANONYMOUS 2043SET GTID_NEXT = 'ANONYMOUS'; 2044BEGIN; 2045[START] INSERT INTO innodb VALUES (1); 2046include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2047include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2048[END] INSERT INTO innodb VALUES (1); 2049include/assert.inc [No warning or error should be generated.] 2050include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2051include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2052ROLLBACK; 2053Warnings: 2054Warning 1196 Some non-transactional changed tables couldn't be rolled back 2055SET GTID_NEXT = 'AUTOMATIC'; 2056include/assert.inc [Both counters should be 0] 2057DROP TRIGGER trig; 2058SET SQL_LOG_BIN = 1; 2059DROP TABLE myisam1, myisam2, tmp_myisam1, tmp_myisam2, innodb; 2060######## ENFORCE_GTID_CONSISTENCY=ERROR GTID_MODE=ON_PERMISSIVE GTID_NEXT=GTID ######## 2061CREATE TABLE myisam1 (a INT) ENGINE = MyISAM; 2062CREATE TABLE myisam2 (a INT) ENGINE = MyISAM; 2063CREATE TABLE innodb (a INT) ENGINE = InnoDB; 2064---- MyISAM and MyISAM in one statement ---- 2065CREATE TRIGGER trig BEFORE INSERT ON myisam1 FOR EACH ROW INSERT INTO myisam2 VALUES (1); 2066# enforce_gtid_consistency=1 gtid_mode=2 gtid_next=GTID 2067SET GTID_NEXT = 'GTID'; 2068[START] INSERT INTO myisam2 VALUES (1); 2069include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2070include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2071[END] INSERT INTO myisam2 VALUES (1); 2072include/assert.inc [No warning or error should be generated.] 2073include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2074include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2075ROLLBACK; 2076SET GTID_NEXT = 'AUTOMATIC'; 2077include/assert.inc [Both counters should be 0] 2078DROP TRIGGER trig; 2079SET SESSION BINLOG_FORMAT = MIXED; 2080---- InnoDB followed by temp MyISAM in one trx, binlog_format=mix ---- 2081CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 2082# enforce_gtid_consistency=1 gtid_mode=2 gtid_next=GTID 2083SET GTID_NEXT = 'GTID'; 2084BEGIN; INSERT INTO innodb VALUES (1); 2085[START] INSERT INTO tmp_myisam1 VALUES (1); 2086include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2087include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2088[END] INSERT INTO tmp_myisam1 VALUES (1); 2089include/assert.inc [No warning or error should be generated.] 2090include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2091include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2092ROLLBACK; 2093Warnings: 2094Warning 1196 Some non-transactional changed tables couldn't be rolled back 2095SET GTID_NEXT = 'AUTOMATIC'; 2096include/assert.inc [Both counters should be 0] 2097DROP TEMPORARY TABLE tmp_myisam1; 2098---- InnoDB and temp MyISAM in one autocommit statement, binlog_format=mix ---- 2099CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 2100CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 2101CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO tmp_myisam1 VALUES (1); INSERT INTO tmp_myisam2 VALUES (1); END; 2102# enforce_gtid_consistency=1 gtid_mode=2 gtid_next=GTID 2103SET GTID_NEXT = 'GTID'; 2104[START] INSERT INTO innodb VALUES (1); 2105include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2106include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2107[END] INSERT INTO innodb VALUES (1); 2108include/assert.inc [No warning or error should be generated.] 2109include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2110include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2111ROLLBACK; 2112SET GTID_NEXT = 'AUTOMATIC'; 2113include/assert.inc [Both counters should be 0] 2114DROP TRIGGER trig; 2115DROP TEMPORARY TABLE tmp_myisam1, tmp_myisam2; 2116SET BINLOG_FORMAT = ROW; 2117CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 2118CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 2119---- InnoDB followed by temp MyISAM in one trx, binlog_format=row ---- 2120# enforce_gtid_consistency=1 gtid_mode=2 gtid_next=GTID 2121SET GTID_NEXT = 'GTID'; 2122BEGIN; INSERT INTO innodb VALUES (1); 2123[START] INSERT INTO tmp_myisam1 VALUES (1); 2124include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2125include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2126[END] INSERT INTO tmp_myisam1 VALUES (1); 2127include/assert.inc [No warning or error should be generated.] 2128include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2129include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2130ROLLBACK; 2131Warnings: 2132Warning 1196 Some non-transactional changed tables couldn't be rolled back 2133SET GTID_NEXT = 'AUTOMATIC'; 2134include/assert.inc [Both counters should be 0] 2135---- InnoDB and temp MyISAM in one statement, binlog_format=row ---- 2136CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO tmp_myisam1 VALUES (1); INSERT INTO tmp_myisam2 VALUES (1); END; 2137# enforce_gtid_consistency=1 gtid_mode=2 gtid_next=GTID 2138SET GTID_NEXT = 'GTID'; 2139[START] INSERT INTO innodb VALUES (1); 2140include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2141include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2142[END] INSERT INTO innodb VALUES (1); 2143include/assert.inc [No warning or error should be generated.] 2144include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2145include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2146ROLLBACK; 2147SET GTID_NEXT = 'AUTOMATIC'; 2148include/assert.inc [Both counters should be 0] 2149DROP TRIGGER trig; 2150DROP TEMPORARY TABLE tmp_myisam1, tmp_myisam2; 2151SET BINLOG_FORMAT = #; 2152CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 2153CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 2154SET SQL_LOG_BIN = 0; 2155---- InnoDB and MyISAM in one statement, SQL_LOG_BIN=0 ---- 2156CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO myisam1 VALUES (1); INSERT INTO myisam2 VALUES (1); END; 2157# enforce_gtid_consistency=1 gtid_mode=2 gtid_next=GTID 2158SET GTID_NEXT = 'GTID'; 2159[START] INSERT INTO innodb VALUES (1); 2160include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2161include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2162[END] INSERT INTO innodb VALUES (1); 2163include/assert.inc [No warning or error should be generated.] 2164include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2165include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2166ROLLBACK; 2167SET GTID_NEXT = 'AUTOMATIC'; 2168include/assert.inc [Both counters should be 0] 2169DROP TRIGGER trig; 2170---- InnoDB followed by MyISAM, in one trx, SQL_LOG_BIN=0 ---- 2171# enforce_gtid_consistency=1 gtid_mode=2 gtid_next=GTID 2172SET GTID_NEXT = 'GTID'; 2173BEGIN; INSERT INTO innodb VALUES (1); 2174[START] INSERT INTO myisam1 VALUES (1); 2175include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2176include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2177[END] INSERT INTO myisam1 VALUES (1); 2178include/assert.inc [No warning or error should be generated.] 2179include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2180include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2181ROLLBACK; 2182Warnings: 2183Warning 1196 Some non-transactional changed tables couldn't be rolled back 2184SET GTID_NEXT = 'AUTOMATIC'; 2185include/assert.inc [Both counters should be 0] 2186---- InnoDB and MyISAM in one statement inside trx, SQL_LOG_BIN=0 ---- 2187CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO myisam1 VALUES (1); INSERT INTO myisam2 VALUES (1); END; 2188# enforce_gtid_consistency=1 gtid_mode=2 gtid_next=GTID 2189SET GTID_NEXT = 'GTID'; 2190BEGIN; 2191[START] INSERT INTO innodb VALUES (1); 2192include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2193include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2194[END] INSERT INTO innodb VALUES (1); 2195include/assert.inc [No warning or error should be generated.] 2196include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2197include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2198ROLLBACK; 2199Warnings: 2200Warning 1196 Some non-transactional changed tables couldn't be rolled back 2201SET GTID_NEXT = 'AUTOMATIC'; 2202include/assert.inc [Both counters should be 0] 2203DROP TRIGGER trig; 2204SET SQL_LOG_BIN = 1; 2205DROP TABLE myisam1, myisam2, tmp_myisam1, tmp_myisam2, innodb; 2206SET GLOBAL GTID_MODE = 1; 2207######## ENFORCE_GTID_CONSISTENCY=ERROR GTID_MODE=OFF_PERMISSIVE GTID_NEXT=AUTOMATIC ######## 2208CREATE TABLE myisam1 (a INT) ENGINE = MyISAM; 2209CREATE TABLE myisam2 (a INT) ENGINE = MyISAM; 2210CREATE TABLE innodb (a INT) ENGINE = InnoDB; 2211---- MyISAM followed by MyISAM, in one 'trx' ---- 2212# enforce_gtid_consistency=1 gtid_mode=1 gtid_next=AUTOMATIC 2213SET GTID_NEXT = 'AUTOMATIC'; 2214BEGIN; INSERT INTO myisam1 VALUES (1); 2215[START] INSERT INTO myisam2 VALUES (1); 2216include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2217include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2218[END] INSERT INTO myisam2 VALUES (1); 2219include/assert.inc [No warning or error should be generated.] 2220include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2221include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2222ROLLBACK; 2223Warnings: 2224Warning 1196 Some non-transactional changed tables couldn't be rolled back 2225SET GTID_NEXT = 'AUTOMATIC'; 2226include/assert.inc [Both counters should be 0] 2227---- MyISAM and MyISAM in one statement ---- 2228CREATE TRIGGER trig BEFORE INSERT ON myisam1 FOR EACH ROW INSERT INTO myisam2 VALUES (1); 2229# enforce_gtid_consistency=1 gtid_mode=1 gtid_next=AUTOMATIC 2230SET GTID_NEXT = 'AUTOMATIC'; 2231[START] INSERT INTO myisam2 VALUES (1); 2232include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2233include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2234[END] INSERT INTO myisam2 VALUES (1); 2235include/assert.inc [No warning or error should be generated.] 2236include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2237include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2238ROLLBACK; 2239SET GTID_NEXT = 'AUTOMATIC'; 2240include/assert.inc [Both counters should be 0] 2241DROP TRIGGER trig; 2242---- MyISAM followed by InnoDB, in one 'trx' ---- 2243# enforce_gtid_consistency=1 gtid_mode=1 gtid_next=AUTOMATIC 2244SET GTID_NEXT = 'AUTOMATIC'; 2245BEGIN; INSERT INTO myisam1 VALUES (1); 2246[START] INSERT INTO innodb VALUES (1); 2247include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2248include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2249[END] INSERT INTO innodb VALUES (1); 2250include/assert.inc [No warning or error should be generated.] 2251include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2252include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2253ROLLBACK; 2254Warnings: 2255Warning 1196 Some non-transactional changed tables couldn't be rolled back 2256SET GTID_NEXT = 'AUTOMATIC'; 2257include/assert.inc [Both counters should be 0] 2258SET SESSION BINLOG_FORMAT = MIXED; 2259---- InnoDB followed by temp MyISAM in one trx, binlog_format=mix ---- 2260CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 2261# enforce_gtid_consistency=1 gtid_mode=1 gtid_next=AUTOMATIC 2262SET GTID_NEXT = 'AUTOMATIC'; 2263BEGIN; INSERT INTO innodb VALUES (1); 2264[START] INSERT INTO tmp_myisam1 VALUES (1); 2265include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2266include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2267[END] INSERT INTO tmp_myisam1 VALUES (1); 2268include/assert.inc [No warning or error should be generated.] 2269include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2270include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2271ROLLBACK; 2272Warnings: 2273Warning 1196 Some non-transactional changed tables couldn't be rolled back 2274SET GTID_NEXT = 'AUTOMATIC'; 2275include/assert.inc [Both counters should be 0] 2276DROP TEMPORARY TABLE tmp_myisam1; 2277---- InnoDB and temp MyISAM in one autocommit statement, binlog_format=mix ---- 2278CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 2279CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 2280CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO tmp_myisam1 VALUES (1); INSERT INTO tmp_myisam2 VALUES (1); END; 2281# enforce_gtid_consistency=1 gtid_mode=1 gtid_next=AUTOMATIC 2282SET GTID_NEXT = 'AUTOMATIC'; 2283[START] INSERT INTO innodb VALUES (1); 2284include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2285include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2286[END] INSERT INTO innodb VALUES (1); 2287include/assert.inc [No warning or error should be generated.] 2288include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2289include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2290ROLLBACK; 2291SET GTID_NEXT = 'AUTOMATIC'; 2292include/assert.inc [Both counters should be 0] 2293DROP TRIGGER trig; 2294DROP TEMPORARY TABLE tmp_myisam1, tmp_myisam2; 2295SET BINLOG_FORMAT = ROW; 2296CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 2297CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 2298---- InnoDB followed by temp MyISAM in one trx, binlog_format=row ---- 2299# enforce_gtid_consistency=1 gtid_mode=1 gtid_next=AUTOMATIC 2300SET GTID_NEXT = 'AUTOMATIC'; 2301BEGIN; INSERT INTO innodb VALUES (1); 2302[START] INSERT INTO tmp_myisam1 VALUES (1); 2303include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2304include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2305[END] INSERT INTO tmp_myisam1 VALUES (1); 2306include/assert.inc [No warning or error should be generated.] 2307include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2308include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2309ROLLBACK; 2310Warnings: 2311Warning 1196 Some non-transactional changed tables couldn't be rolled back 2312SET GTID_NEXT = 'AUTOMATIC'; 2313include/assert.inc [Both counters should be 0] 2314---- InnoDB and temp MyISAM in one statement, binlog_format=row ---- 2315CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO tmp_myisam1 VALUES (1); INSERT INTO tmp_myisam2 VALUES (1); END; 2316# enforce_gtid_consistency=1 gtid_mode=1 gtid_next=AUTOMATIC 2317SET GTID_NEXT = 'AUTOMATIC'; 2318[START] INSERT INTO innodb VALUES (1); 2319include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2320include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2321[END] INSERT INTO innodb VALUES (1); 2322include/assert.inc [No warning or error should be generated.] 2323include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2324include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2325ROLLBACK; 2326SET GTID_NEXT = 'AUTOMATIC'; 2327include/assert.inc [Both counters should be 0] 2328DROP TRIGGER trig; 2329DROP TEMPORARY TABLE tmp_myisam1, tmp_myisam2; 2330SET BINLOG_FORMAT = #; 2331CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 2332CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 2333SET SQL_LOG_BIN = 0; 2334---- InnoDB and MyISAM in one statement, SQL_LOG_BIN=0 ---- 2335CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO myisam1 VALUES (1); INSERT INTO myisam2 VALUES (1); END; 2336# enforce_gtid_consistency=1 gtid_mode=1 gtid_next=AUTOMATIC 2337SET GTID_NEXT = 'AUTOMATIC'; 2338[START] INSERT INTO innodb VALUES (1); 2339include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2340include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2341[END] INSERT INTO innodb VALUES (1); 2342include/assert.inc [No warning or error should be generated.] 2343include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2344include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2345ROLLBACK; 2346SET GTID_NEXT = 'AUTOMATIC'; 2347include/assert.inc [Both counters should be 0] 2348DROP TRIGGER trig; 2349---- InnoDB followed by MyISAM, in one trx, SQL_LOG_BIN=0 ---- 2350# enforce_gtid_consistency=1 gtid_mode=1 gtid_next=AUTOMATIC 2351SET GTID_NEXT = 'AUTOMATIC'; 2352BEGIN; INSERT INTO innodb VALUES (1); 2353[START] INSERT INTO myisam1 VALUES (1); 2354include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2355include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2356[END] INSERT INTO myisam1 VALUES (1); 2357include/assert.inc [No warning or error should be generated.] 2358include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2359include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2360ROLLBACK; 2361Warnings: 2362Warning 1196 Some non-transactional changed tables couldn't be rolled back 2363SET GTID_NEXT = 'AUTOMATIC'; 2364include/assert.inc [Both counters should be 0] 2365---- InnoDB and MyISAM in one statement inside trx, SQL_LOG_BIN=0 ---- 2366CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO myisam1 VALUES (1); INSERT INTO myisam2 VALUES (1); END; 2367# enforce_gtid_consistency=1 gtid_mode=1 gtid_next=AUTOMATIC 2368SET GTID_NEXT = 'AUTOMATIC'; 2369BEGIN; 2370[START] INSERT INTO innodb VALUES (1); 2371include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2372include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2373[END] INSERT INTO innodb VALUES (1); 2374include/assert.inc [No warning or error should be generated.] 2375include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2376include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2377ROLLBACK; 2378Warnings: 2379Warning 1196 Some non-transactional changed tables couldn't be rolled back 2380SET GTID_NEXT = 'AUTOMATIC'; 2381include/assert.inc [Both counters should be 0] 2382DROP TRIGGER trig; 2383SET SQL_LOG_BIN = 1; 2384DROP TABLE myisam1, myisam2, tmp_myisam1, tmp_myisam2, innodb; 2385######## ENFORCE_GTID_CONSISTENCY=ERROR GTID_MODE=OFF_PERMISSIVE GTID_NEXT=ANONYMOUS ######## 2386CREATE TABLE myisam1 (a INT) ENGINE = MyISAM; 2387CREATE TABLE myisam2 (a INT) ENGINE = MyISAM; 2388CREATE TABLE innodb (a INT) ENGINE = InnoDB; 2389---- MyISAM followed by MyISAM, in one 'trx' ---- 2390# enforce_gtid_consistency=1 gtid_mode=1 gtid_next=ANONYMOUS 2391SET GTID_NEXT = 'ANONYMOUS'; 2392BEGIN; INSERT INTO myisam1 VALUES (1); 2393[START] INSERT INTO myisam2 VALUES (1); 2394include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2395include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2396[END] INSERT INTO myisam2 VALUES (1); 2397include/assert.inc [No warning or error should be generated.] 2398include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2399include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2400ROLLBACK; 2401Warnings: 2402Warning 1196 Some non-transactional changed tables couldn't be rolled back 2403SET GTID_NEXT = 'AUTOMATIC'; 2404include/assert.inc [Both counters should be 0] 2405---- MyISAM and MyISAM in one statement ---- 2406CREATE TRIGGER trig BEFORE INSERT ON myisam1 FOR EACH ROW INSERT INTO myisam2 VALUES (1); 2407# enforce_gtid_consistency=1 gtid_mode=1 gtid_next=ANONYMOUS 2408SET GTID_NEXT = 'ANONYMOUS'; 2409[START] INSERT INTO myisam2 VALUES (1); 2410include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2411include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2412[END] INSERT INTO myisam2 VALUES (1); 2413include/assert.inc [No warning or error should be generated.] 2414include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2415include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2416ROLLBACK; 2417SET GTID_NEXT = 'AUTOMATIC'; 2418include/assert.inc [Both counters should be 0] 2419DROP TRIGGER trig; 2420---- MyISAM followed by InnoDB, in one 'trx' ---- 2421# enforce_gtid_consistency=1 gtid_mode=1 gtid_next=ANONYMOUS 2422SET GTID_NEXT = 'ANONYMOUS'; 2423BEGIN; INSERT INTO myisam1 VALUES (1); 2424[START] INSERT INTO innodb VALUES (1); 2425include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2426include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2427[END] INSERT INTO innodb VALUES (1); 2428include/assert.inc [No warning or error should be generated.] 2429include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2430include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2431ROLLBACK; 2432Warnings: 2433Warning 1196 Some non-transactional changed tables couldn't be rolled back 2434SET GTID_NEXT = 'AUTOMATIC'; 2435include/assert.inc [Both counters should be 0] 2436SET SESSION BINLOG_FORMAT = MIXED; 2437---- InnoDB followed by temp MyISAM in one trx, binlog_format=mix ---- 2438CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 2439# enforce_gtid_consistency=1 gtid_mode=1 gtid_next=ANONYMOUS 2440SET GTID_NEXT = 'ANONYMOUS'; 2441BEGIN; INSERT INTO innodb VALUES (1); 2442[START] INSERT INTO tmp_myisam1 VALUES (1); 2443include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2444include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2445[END] INSERT INTO tmp_myisam1 VALUES (1); 2446include/assert.inc [No warning or error should be generated.] 2447include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2448include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2449ROLLBACK; 2450Warnings: 2451Warning 1196 Some non-transactional changed tables couldn't be rolled back 2452SET GTID_NEXT = 'AUTOMATIC'; 2453include/assert.inc [Both counters should be 0] 2454DROP TEMPORARY TABLE tmp_myisam1; 2455---- InnoDB and temp MyISAM in one autocommit statement, binlog_format=mix ---- 2456CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 2457CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 2458CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO tmp_myisam1 VALUES (1); INSERT INTO tmp_myisam2 VALUES (1); END; 2459# enforce_gtid_consistency=1 gtid_mode=1 gtid_next=ANONYMOUS 2460SET GTID_NEXT = 'ANONYMOUS'; 2461[START] INSERT INTO innodb VALUES (1); 2462include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2463include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2464[END] INSERT INTO innodb VALUES (1); 2465include/assert.inc [No warning or error should be generated.] 2466include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2467include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2468ROLLBACK; 2469SET GTID_NEXT = 'AUTOMATIC'; 2470include/assert.inc [Both counters should be 0] 2471DROP TRIGGER trig; 2472DROP TEMPORARY TABLE tmp_myisam1, tmp_myisam2; 2473SET BINLOG_FORMAT = ROW; 2474CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 2475CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 2476---- InnoDB followed by temp MyISAM in one trx, binlog_format=row ---- 2477# enforce_gtid_consistency=1 gtid_mode=1 gtid_next=ANONYMOUS 2478SET GTID_NEXT = 'ANONYMOUS'; 2479BEGIN; INSERT INTO innodb VALUES (1); 2480[START] INSERT INTO tmp_myisam1 VALUES (1); 2481include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2482include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2483[END] INSERT INTO tmp_myisam1 VALUES (1); 2484include/assert.inc [No warning or error should be generated.] 2485include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2486include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2487ROLLBACK; 2488Warnings: 2489Warning 1196 Some non-transactional changed tables couldn't be rolled back 2490SET GTID_NEXT = 'AUTOMATIC'; 2491include/assert.inc [Both counters should be 0] 2492---- InnoDB and temp MyISAM in one statement, binlog_format=row ---- 2493CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO tmp_myisam1 VALUES (1); INSERT INTO tmp_myisam2 VALUES (1); END; 2494# enforce_gtid_consistency=1 gtid_mode=1 gtid_next=ANONYMOUS 2495SET GTID_NEXT = 'ANONYMOUS'; 2496[START] INSERT INTO innodb VALUES (1); 2497include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2498include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2499[END] INSERT INTO innodb VALUES (1); 2500include/assert.inc [No warning or error should be generated.] 2501include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2502include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2503ROLLBACK; 2504SET GTID_NEXT = 'AUTOMATIC'; 2505include/assert.inc [Both counters should be 0] 2506DROP TRIGGER trig; 2507DROP TEMPORARY TABLE tmp_myisam1, tmp_myisam2; 2508SET BINLOG_FORMAT = #; 2509CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 2510CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 2511SET SQL_LOG_BIN = 0; 2512---- InnoDB and MyISAM in one statement, SQL_LOG_BIN=0 ---- 2513CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO myisam1 VALUES (1); INSERT INTO myisam2 VALUES (1); END; 2514# enforce_gtid_consistency=1 gtid_mode=1 gtid_next=ANONYMOUS 2515SET GTID_NEXT = 'ANONYMOUS'; 2516[START] INSERT INTO innodb VALUES (1); 2517include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2518include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2519[END] INSERT INTO innodb VALUES (1); 2520include/assert.inc [No warning or error should be generated.] 2521include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2522include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2523ROLLBACK; 2524SET GTID_NEXT = 'AUTOMATIC'; 2525include/assert.inc [Both counters should be 0] 2526DROP TRIGGER trig; 2527---- InnoDB followed by MyISAM, in one trx, SQL_LOG_BIN=0 ---- 2528# enforce_gtid_consistency=1 gtid_mode=1 gtid_next=ANONYMOUS 2529SET GTID_NEXT = 'ANONYMOUS'; 2530BEGIN; INSERT INTO innodb VALUES (1); 2531[START] INSERT INTO myisam1 VALUES (1); 2532include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2533include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2534[END] INSERT INTO myisam1 VALUES (1); 2535include/assert.inc [No warning or error should be generated.] 2536include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2537include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2538ROLLBACK; 2539Warnings: 2540Warning 1196 Some non-transactional changed tables couldn't be rolled back 2541SET GTID_NEXT = 'AUTOMATIC'; 2542include/assert.inc [Both counters should be 0] 2543---- InnoDB and MyISAM in one statement inside trx, SQL_LOG_BIN=0 ---- 2544CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO myisam1 VALUES (1); INSERT INTO myisam2 VALUES (1); END; 2545# enforce_gtid_consistency=1 gtid_mode=1 gtid_next=ANONYMOUS 2546SET GTID_NEXT = 'ANONYMOUS'; 2547BEGIN; 2548[START] INSERT INTO innodb VALUES (1); 2549include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2550include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2551[END] INSERT INTO innodb VALUES (1); 2552include/assert.inc [No warning or error should be generated.] 2553include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2554include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2555ROLLBACK; 2556Warnings: 2557Warning 1196 Some non-transactional changed tables couldn't be rolled back 2558SET GTID_NEXT = 'AUTOMATIC'; 2559include/assert.inc [Both counters should be 0] 2560DROP TRIGGER trig; 2561SET SQL_LOG_BIN = 1; 2562DROP TABLE myisam1, myisam2, tmp_myisam1, tmp_myisam2, innodb; 2563######## ENFORCE_GTID_CONSISTENCY=ERROR GTID_MODE=OFF_PERMISSIVE GTID_NEXT=GTID ######## 2564CREATE TABLE myisam1 (a INT) ENGINE = MyISAM; 2565CREATE TABLE myisam2 (a INT) ENGINE = MyISAM; 2566CREATE TABLE innodb (a INT) ENGINE = InnoDB; 2567---- MyISAM and MyISAM in one statement ---- 2568CREATE TRIGGER trig BEFORE INSERT ON myisam1 FOR EACH ROW INSERT INTO myisam2 VALUES (1); 2569# enforce_gtid_consistency=1 gtid_mode=1 gtid_next=GTID 2570SET GTID_NEXT = 'GTID'; 2571[START] INSERT INTO myisam2 VALUES (1); 2572include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2573include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2574[END] INSERT INTO myisam2 VALUES (1); 2575include/assert.inc [No warning or error should be generated.] 2576include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2577include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2578ROLLBACK; 2579SET GTID_NEXT = 'AUTOMATIC'; 2580include/assert.inc [Both counters should be 0] 2581DROP TRIGGER trig; 2582SET SESSION BINLOG_FORMAT = MIXED; 2583---- InnoDB followed by temp MyISAM in one trx, binlog_format=mix ---- 2584CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 2585# enforce_gtid_consistency=1 gtid_mode=1 gtid_next=GTID 2586SET GTID_NEXT = 'GTID'; 2587BEGIN; INSERT INTO innodb VALUES (1); 2588[START] INSERT INTO tmp_myisam1 VALUES (1); 2589include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2590include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2591[END] INSERT INTO tmp_myisam1 VALUES (1); 2592include/assert.inc [No warning or error should be generated.] 2593include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2594include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2595ROLLBACK; 2596Warnings: 2597Warning 1196 Some non-transactional changed tables couldn't be rolled back 2598SET GTID_NEXT = 'AUTOMATIC'; 2599include/assert.inc [Both counters should be 0] 2600DROP TEMPORARY TABLE tmp_myisam1; 2601---- InnoDB and temp MyISAM in one autocommit statement, binlog_format=mix ---- 2602CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 2603CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 2604CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO tmp_myisam1 VALUES (1); INSERT INTO tmp_myisam2 VALUES (1); END; 2605# enforce_gtid_consistency=1 gtid_mode=1 gtid_next=GTID 2606SET GTID_NEXT = 'GTID'; 2607[START] INSERT INTO innodb VALUES (1); 2608include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2609include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2610[END] INSERT INTO innodb VALUES (1); 2611include/assert.inc [No warning or error should be generated.] 2612include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2613include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2614ROLLBACK; 2615SET GTID_NEXT = 'AUTOMATIC'; 2616include/assert.inc [Both counters should be 0] 2617DROP TRIGGER trig; 2618DROP TEMPORARY TABLE tmp_myisam1, tmp_myisam2; 2619SET BINLOG_FORMAT = ROW; 2620CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 2621CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 2622---- InnoDB followed by temp MyISAM in one trx, binlog_format=row ---- 2623# enforce_gtid_consistency=1 gtid_mode=1 gtid_next=GTID 2624SET GTID_NEXT = 'GTID'; 2625BEGIN; INSERT INTO innodb VALUES (1); 2626[START] INSERT INTO tmp_myisam1 VALUES (1); 2627include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2628include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2629[END] INSERT INTO tmp_myisam1 VALUES (1); 2630include/assert.inc [No warning or error should be generated.] 2631include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2632include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2633ROLLBACK; 2634Warnings: 2635Warning 1196 Some non-transactional changed tables couldn't be rolled back 2636SET GTID_NEXT = 'AUTOMATIC'; 2637include/assert.inc [Both counters should be 0] 2638---- InnoDB and temp MyISAM in one statement, binlog_format=row ---- 2639CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO tmp_myisam1 VALUES (1); INSERT INTO tmp_myisam2 VALUES (1); END; 2640# enforce_gtid_consistency=1 gtid_mode=1 gtid_next=GTID 2641SET GTID_NEXT = 'GTID'; 2642[START] INSERT INTO innodb VALUES (1); 2643include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2644include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2645[END] INSERT INTO innodb VALUES (1); 2646include/assert.inc [No warning or error should be generated.] 2647include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2648include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2649ROLLBACK; 2650SET GTID_NEXT = 'AUTOMATIC'; 2651include/assert.inc [Both counters should be 0] 2652DROP TRIGGER trig; 2653DROP TEMPORARY TABLE tmp_myisam1, tmp_myisam2; 2654SET BINLOG_FORMAT = #; 2655CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 2656CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 2657SET SQL_LOG_BIN = 0; 2658---- InnoDB and MyISAM in one statement, SQL_LOG_BIN=0 ---- 2659CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO myisam1 VALUES (1); INSERT INTO myisam2 VALUES (1); END; 2660# enforce_gtid_consistency=1 gtid_mode=1 gtid_next=GTID 2661SET GTID_NEXT = 'GTID'; 2662[START] INSERT INTO innodb VALUES (1); 2663include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2664include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2665[END] INSERT INTO innodb VALUES (1); 2666include/assert.inc [No warning or error should be generated.] 2667include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2668include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2669ROLLBACK; 2670SET GTID_NEXT = 'AUTOMATIC'; 2671include/assert.inc [Both counters should be 0] 2672DROP TRIGGER trig; 2673---- InnoDB followed by MyISAM, in one trx, SQL_LOG_BIN=0 ---- 2674# enforce_gtid_consistency=1 gtid_mode=1 gtid_next=GTID 2675SET GTID_NEXT = 'GTID'; 2676BEGIN; INSERT INTO innodb VALUES (1); 2677[START] INSERT INTO myisam1 VALUES (1); 2678include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2679include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2680[END] INSERT INTO myisam1 VALUES (1); 2681include/assert.inc [No warning or error should be generated.] 2682include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2683include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2684ROLLBACK; 2685Warnings: 2686Warning 1196 Some non-transactional changed tables couldn't be rolled back 2687SET GTID_NEXT = 'AUTOMATIC'; 2688include/assert.inc [Both counters should be 0] 2689---- InnoDB and MyISAM in one statement inside trx, SQL_LOG_BIN=0 ---- 2690CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO myisam1 VALUES (1); INSERT INTO myisam2 VALUES (1); END; 2691# enforce_gtid_consistency=1 gtid_mode=1 gtid_next=GTID 2692SET GTID_NEXT = 'GTID'; 2693BEGIN; 2694[START] INSERT INTO innodb VALUES (1); 2695include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2696include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2697[END] INSERT INTO innodb VALUES (1); 2698include/assert.inc [No warning or error should be generated.] 2699include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2700include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2701ROLLBACK; 2702Warnings: 2703Warning 1196 Some non-transactional changed tables couldn't be rolled back 2704SET GTID_NEXT = 'AUTOMATIC'; 2705include/assert.inc [Both counters should be 0] 2706DROP TRIGGER trig; 2707SET SQL_LOG_BIN = 1; 2708DROP TABLE myisam1, myisam2, tmp_myisam1, tmp_myisam2, innodb; 2709SET GLOBAL GTID_MODE = 0; 2710######## ENFORCE_GTID_CONSISTENCY=ERROR GTID_MODE=OFF GTID_NEXT=AUTOMATIC ######## 2711CREATE TABLE myisam1 (a INT) ENGINE = MyISAM; 2712CREATE TABLE myisam2 (a INT) ENGINE = MyISAM; 2713CREATE TABLE innodb (a INT) ENGINE = InnoDB; 2714---- MyISAM followed by MyISAM, in one 'trx' ---- 2715# enforce_gtid_consistency=1 gtid_mode=0 gtid_next=AUTOMATIC 2716SET GTID_NEXT = 'AUTOMATIC'; 2717BEGIN; INSERT INTO myisam1 VALUES (1); 2718[START] INSERT INTO myisam2 VALUES (1); 2719include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2720include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2721[END] INSERT INTO myisam2 VALUES (1); 2722include/assert.inc [No warning or error should be generated.] 2723include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2724include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2725ROLLBACK; 2726Warnings: 2727Warning 1196 Some non-transactional changed tables couldn't be rolled back 2728SET GTID_NEXT = 'AUTOMATIC'; 2729include/assert.inc [Both counters should be 0] 2730---- MyISAM and MyISAM in one statement ---- 2731CREATE TRIGGER trig BEFORE INSERT ON myisam1 FOR EACH ROW INSERT INTO myisam2 VALUES (1); 2732# enforce_gtid_consistency=1 gtid_mode=0 gtid_next=AUTOMATIC 2733SET GTID_NEXT = 'AUTOMATIC'; 2734[START] INSERT INTO myisam2 VALUES (1); 2735include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2736include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2737[END] INSERT INTO myisam2 VALUES (1); 2738include/assert.inc [No warning or error should be generated.] 2739include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2740include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2741ROLLBACK; 2742SET GTID_NEXT = 'AUTOMATIC'; 2743include/assert.inc [Both counters should be 0] 2744DROP TRIGGER trig; 2745---- MyISAM followed by InnoDB, in one 'trx' ---- 2746# enforce_gtid_consistency=1 gtid_mode=0 gtid_next=AUTOMATIC 2747SET GTID_NEXT = 'AUTOMATIC'; 2748BEGIN; INSERT INTO myisam1 VALUES (1); 2749[START] INSERT INTO innodb VALUES (1); 2750include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2751include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2752[END] INSERT INTO innodb VALUES (1); 2753include/assert.inc [No warning or error should be generated.] 2754include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2755include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2756ROLLBACK; 2757Warnings: 2758Warning 1196 Some non-transactional changed tables couldn't be rolled back 2759SET GTID_NEXT = 'AUTOMATIC'; 2760include/assert.inc [Both counters should be 0] 2761SET SESSION BINLOG_FORMAT = MIXED; 2762---- InnoDB followed by temp MyISAM in one trx, binlog_format=mix ---- 2763CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 2764# enforce_gtid_consistency=1 gtid_mode=0 gtid_next=AUTOMATIC 2765SET GTID_NEXT = 'AUTOMATIC'; 2766BEGIN; INSERT INTO innodb VALUES (1); 2767[START] INSERT INTO tmp_myisam1 VALUES (1); 2768include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2769include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2770[END] INSERT INTO tmp_myisam1 VALUES (1); 2771include/assert.inc [No warning or error should be generated.] 2772include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2773include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2774ROLLBACK; 2775Warnings: 2776Warning 1196 Some non-transactional changed tables couldn't be rolled back 2777SET GTID_NEXT = 'AUTOMATIC'; 2778include/assert.inc [Both counters should be 0] 2779DROP TEMPORARY TABLE tmp_myisam1; 2780---- InnoDB and temp MyISAM in one autocommit statement, binlog_format=mix ---- 2781CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 2782CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 2783CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO tmp_myisam1 VALUES (1); INSERT INTO tmp_myisam2 VALUES (1); END; 2784# enforce_gtid_consistency=1 gtid_mode=0 gtid_next=AUTOMATIC 2785SET GTID_NEXT = 'AUTOMATIC'; 2786[START] INSERT INTO innodb VALUES (1); 2787include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2788include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2789[END] INSERT INTO innodb VALUES (1); 2790include/assert.inc [No warning or error should be generated.] 2791include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2792include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2793ROLLBACK; 2794SET GTID_NEXT = 'AUTOMATIC'; 2795include/assert.inc [Both counters should be 0] 2796DROP TRIGGER trig; 2797DROP TEMPORARY TABLE tmp_myisam1, tmp_myisam2; 2798SET BINLOG_FORMAT = ROW; 2799CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 2800CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 2801---- InnoDB followed by temp MyISAM in one trx, binlog_format=row ---- 2802# enforce_gtid_consistency=1 gtid_mode=0 gtid_next=AUTOMATIC 2803SET GTID_NEXT = 'AUTOMATIC'; 2804BEGIN; INSERT INTO innodb VALUES (1); 2805[START] INSERT INTO tmp_myisam1 VALUES (1); 2806include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2807include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2808[END] INSERT INTO tmp_myisam1 VALUES (1); 2809include/assert.inc [No warning or error should be generated.] 2810include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2811include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2812ROLLBACK; 2813Warnings: 2814Warning 1196 Some non-transactional changed tables couldn't be rolled back 2815SET GTID_NEXT = 'AUTOMATIC'; 2816include/assert.inc [Both counters should be 0] 2817---- InnoDB and temp MyISAM in one statement, binlog_format=row ---- 2818CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO tmp_myisam1 VALUES (1); INSERT INTO tmp_myisam2 VALUES (1); END; 2819# enforce_gtid_consistency=1 gtid_mode=0 gtid_next=AUTOMATIC 2820SET GTID_NEXT = 'AUTOMATIC'; 2821[START] INSERT INTO innodb VALUES (1); 2822include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2823include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2824[END] INSERT INTO innodb VALUES (1); 2825include/assert.inc [No warning or error should be generated.] 2826include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2827include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2828ROLLBACK; 2829SET GTID_NEXT = 'AUTOMATIC'; 2830include/assert.inc [Both counters should be 0] 2831DROP TRIGGER trig; 2832DROP TEMPORARY TABLE tmp_myisam1, tmp_myisam2; 2833SET BINLOG_FORMAT = #; 2834CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 2835CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 2836SET SQL_LOG_BIN = 0; 2837---- InnoDB and MyISAM in one statement, SQL_LOG_BIN=0 ---- 2838CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO myisam1 VALUES (1); INSERT INTO myisam2 VALUES (1); END; 2839# enforce_gtid_consistency=1 gtid_mode=0 gtid_next=AUTOMATIC 2840SET GTID_NEXT = 'AUTOMATIC'; 2841[START] INSERT INTO innodb VALUES (1); 2842include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2843include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2844[END] INSERT INTO innodb VALUES (1); 2845include/assert.inc [No warning or error should be generated.] 2846include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2847include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2848ROLLBACK; 2849SET GTID_NEXT = 'AUTOMATIC'; 2850include/assert.inc [Both counters should be 0] 2851DROP TRIGGER trig; 2852---- InnoDB followed by MyISAM, in one trx, SQL_LOG_BIN=0 ---- 2853# enforce_gtid_consistency=1 gtid_mode=0 gtid_next=AUTOMATIC 2854SET GTID_NEXT = 'AUTOMATIC'; 2855BEGIN; INSERT INTO innodb VALUES (1); 2856[START] INSERT INTO myisam1 VALUES (1); 2857include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2858include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2859[END] INSERT INTO myisam1 VALUES (1); 2860include/assert.inc [No warning or error should be generated.] 2861include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2862include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2863ROLLBACK; 2864Warnings: 2865Warning 1196 Some non-transactional changed tables couldn't be rolled back 2866SET GTID_NEXT = 'AUTOMATIC'; 2867include/assert.inc [Both counters should be 0] 2868---- InnoDB and MyISAM in one statement inside trx, SQL_LOG_BIN=0 ---- 2869CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO myisam1 VALUES (1); INSERT INTO myisam2 VALUES (1); END; 2870# enforce_gtid_consistency=1 gtid_mode=0 gtid_next=AUTOMATIC 2871SET GTID_NEXT = 'AUTOMATIC'; 2872BEGIN; 2873[START] INSERT INTO innodb VALUES (1); 2874include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2875include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2876[END] INSERT INTO innodb VALUES (1); 2877include/assert.inc [No warning or error should be generated.] 2878include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2879include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2880ROLLBACK; 2881Warnings: 2882Warning 1196 Some non-transactional changed tables couldn't be rolled back 2883SET GTID_NEXT = 'AUTOMATIC'; 2884include/assert.inc [Both counters should be 0] 2885DROP TRIGGER trig; 2886SET SQL_LOG_BIN = 1; 2887DROP TABLE myisam1, myisam2, tmp_myisam1, tmp_myisam2, innodb; 2888######## ENFORCE_GTID_CONSISTENCY=ERROR GTID_MODE=OFF GTID_NEXT=ANONYMOUS ######## 2889CREATE TABLE myisam1 (a INT) ENGINE = MyISAM; 2890CREATE TABLE myisam2 (a INT) ENGINE = MyISAM; 2891CREATE TABLE innodb (a INT) ENGINE = InnoDB; 2892---- MyISAM followed by MyISAM, in one 'trx' ---- 2893# enforce_gtid_consistency=1 gtid_mode=0 gtid_next=ANONYMOUS 2894SET GTID_NEXT = 'ANONYMOUS'; 2895BEGIN; INSERT INTO myisam1 VALUES (1); 2896[START] INSERT INTO myisam2 VALUES (1); 2897include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2898include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2899[END] INSERT INTO myisam2 VALUES (1); 2900include/assert.inc [No warning or error should be generated.] 2901include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2902include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2903ROLLBACK; 2904Warnings: 2905Warning 1196 Some non-transactional changed tables couldn't be rolled back 2906SET GTID_NEXT = 'AUTOMATIC'; 2907include/assert.inc [Both counters should be 0] 2908---- MyISAM and MyISAM in one statement ---- 2909CREATE TRIGGER trig BEFORE INSERT ON myisam1 FOR EACH ROW INSERT INTO myisam2 VALUES (1); 2910# enforce_gtid_consistency=1 gtid_mode=0 gtid_next=ANONYMOUS 2911SET GTID_NEXT = 'ANONYMOUS'; 2912[START] INSERT INTO myisam2 VALUES (1); 2913include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2914include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2915[END] INSERT INTO myisam2 VALUES (1); 2916include/assert.inc [No warning or error should be generated.] 2917include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2918include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2919ROLLBACK; 2920SET GTID_NEXT = 'AUTOMATIC'; 2921include/assert.inc [Both counters should be 0] 2922DROP TRIGGER trig; 2923---- MyISAM followed by InnoDB, in one 'trx' ---- 2924# enforce_gtid_consistency=1 gtid_mode=0 gtid_next=ANONYMOUS 2925SET GTID_NEXT = 'ANONYMOUS'; 2926BEGIN; INSERT INTO myisam1 VALUES (1); 2927[START] INSERT INTO innodb VALUES (1); 2928include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2929include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2930[END] INSERT INTO innodb VALUES (1); 2931include/assert.inc [No warning or error should be generated.] 2932include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2933include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2934ROLLBACK; 2935Warnings: 2936Warning 1196 Some non-transactional changed tables couldn't be rolled back 2937SET GTID_NEXT = 'AUTOMATIC'; 2938include/assert.inc [Both counters should be 0] 2939SET SESSION BINLOG_FORMAT = MIXED; 2940---- InnoDB followed by temp MyISAM in one trx, binlog_format=mix ---- 2941CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 2942# enforce_gtid_consistency=1 gtid_mode=0 gtid_next=ANONYMOUS 2943SET GTID_NEXT = 'ANONYMOUS'; 2944BEGIN; INSERT INTO innodb VALUES (1); 2945[START] INSERT INTO tmp_myisam1 VALUES (1); 2946include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2947include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2948[END] INSERT INTO tmp_myisam1 VALUES (1); 2949include/assert.inc [No warning or error should be generated.] 2950include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2951include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2952ROLLBACK; 2953Warnings: 2954Warning 1196 Some non-transactional changed tables couldn't be rolled back 2955SET GTID_NEXT = 'AUTOMATIC'; 2956include/assert.inc [Both counters should be 0] 2957DROP TEMPORARY TABLE tmp_myisam1; 2958---- InnoDB and temp MyISAM in one autocommit statement, binlog_format=mix ---- 2959CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 2960CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 2961CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO tmp_myisam1 VALUES (1); INSERT INTO tmp_myisam2 VALUES (1); END; 2962# enforce_gtid_consistency=1 gtid_mode=0 gtid_next=ANONYMOUS 2963SET GTID_NEXT = 'ANONYMOUS'; 2964[START] INSERT INTO innodb VALUES (1); 2965include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2966include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2967[END] INSERT INTO innodb VALUES (1); 2968include/assert.inc [No warning or error should be generated.] 2969include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2970include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2971ROLLBACK; 2972SET GTID_NEXT = 'AUTOMATIC'; 2973include/assert.inc [Both counters should be 0] 2974DROP TRIGGER trig; 2975DROP TEMPORARY TABLE tmp_myisam1, tmp_myisam2; 2976SET BINLOG_FORMAT = ROW; 2977CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 2978CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 2979---- InnoDB followed by temp MyISAM in one trx, binlog_format=row ---- 2980# enforce_gtid_consistency=1 gtid_mode=0 gtid_next=ANONYMOUS 2981SET GTID_NEXT = 'ANONYMOUS'; 2982BEGIN; INSERT INTO innodb VALUES (1); 2983[START] INSERT INTO tmp_myisam1 VALUES (1); 2984include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2985include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2986[END] INSERT INTO tmp_myisam1 VALUES (1); 2987include/assert.inc [No warning or error should be generated.] 2988include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2989include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 2990ROLLBACK; 2991Warnings: 2992Warning 1196 Some non-transactional changed tables couldn't be rolled back 2993SET GTID_NEXT = 'AUTOMATIC'; 2994include/assert.inc [Both counters should be 0] 2995---- InnoDB and temp MyISAM in one statement, binlog_format=row ---- 2996CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO tmp_myisam1 VALUES (1); INSERT INTO tmp_myisam2 VALUES (1); END; 2997# enforce_gtid_consistency=1 gtid_mode=0 gtid_next=ANONYMOUS 2998SET GTID_NEXT = 'ANONYMOUS'; 2999[START] INSERT INTO innodb VALUES (1); 3000include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3001include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3002[END] INSERT INTO innodb VALUES (1); 3003include/assert.inc [No warning or error should be generated.] 3004include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3005include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3006ROLLBACK; 3007SET GTID_NEXT = 'AUTOMATIC'; 3008include/assert.inc [Both counters should be 0] 3009DROP TRIGGER trig; 3010DROP TEMPORARY TABLE tmp_myisam1, tmp_myisam2; 3011SET BINLOG_FORMAT = #; 3012CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 3013CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 3014SET SQL_LOG_BIN = 0; 3015---- InnoDB and MyISAM in one statement, SQL_LOG_BIN=0 ---- 3016CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO myisam1 VALUES (1); INSERT INTO myisam2 VALUES (1); END; 3017# enforce_gtid_consistency=1 gtid_mode=0 gtid_next=ANONYMOUS 3018SET GTID_NEXT = 'ANONYMOUS'; 3019[START] INSERT INTO innodb VALUES (1); 3020include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3021include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3022[END] INSERT INTO innodb VALUES (1); 3023include/assert.inc [No warning or error should be generated.] 3024include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3025include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3026ROLLBACK; 3027SET GTID_NEXT = 'AUTOMATIC'; 3028include/assert.inc [Both counters should be 0] 3029DROP TRIGGER trig; 3030---- InnoDB followed by MyISAM, in one trx, SQL_LOG_BIN=0 ---- 3031# enforce_gtid_consistency=1 gtid_mode=0 gtid_next=ANONYMOUS 3032SET GTID_NEXT = 'ANONYMOUS'; 3033BEGIN; INSERT INTO innodb VALUES (1); 3034[START] INSERT INTO myisam1 VALUES (1); 3035include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3036include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3037[END] INSERT INTO myisam1 VALUES (1); 3038include/assert.inc [No warning or error should be generated.] 3039include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3040include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3041ROLLBACK; 3042Warnings: 3043Warning 1196 Some non-transactional changed tables couldn't be rolled back 3044SET GTID_NEXT = 'AUTOMATIC'; 3045include/assert.inc [Both counters should be 0] 3046---- InnoDB and MyISAM in one statement inside trx, SQL_LOG_BIN=0 ---- 3047CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO myisam1 VALUES (1); INSERT INTO myisam2 VALUES (1); END; 3048# enforce_gtid_consistency=1 gtid_mode=0 gtid_next=ANONYMOUS 3049SET GTID_NEXT = 'ANONYMOUS'; 3050BEGIN; 3051[START] INSERT INTO innodb VALUES (1); 3052include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3053include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3054[END] INSERT INTO innodb VALUES (1); 3055include/assert.inc [No warning or error should be generated.] 3056include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3057include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3058ROLLBACK; 3059Warnings: 3060Warning 1196 Some non-transactional changed tables couldn't be rolled back 3061SET GTID_NEXT = 'AUTOMATIC'; 3062include/assert.inc [Both counters should be 0] 3063DROP TRIGGER trig; 3064SET SQL_LOG_BIN = 1; 3065DROP TABLE myisam1, myisam2, tmp_myisam1, tmp_myisam2, innodb; 3066SET GLOBAL ENFORCE_GTID_CONSISTENCY = 2; 3067SET GLOBAL GTID_MODE = OFF_PERMISSIVE; 3068SET GLOBAL GTID_MODE = ON_PERMISSIVE; 3069SET GLOBAL GTID_MODE = 2; 3070######## ENFORCE_GTID_CONSISTENCY=WARN GTID_MODE=ON_PERMISSIVE GTID_NEXT=AUTOMATIC ######## 3071CREATE TABLE myisam1 (a INT) ENGINE = MyISAM; 3072CREATE TABLE myisam2 (a INT) ENGINE = MyISAM; 3073CREATE TABLE innodb (a INT) ENGINE = InnoDB; 3074---- MyISAM followed by MyISAM, in one 'trx' ---- 3075# enforce_gtid_consistency=2 gtid_mode=2 gtid_next=AUTOMATIC 3076SET GTID_NEXT = 'AUTOMATIC'; 3077BEGIN; INSERT INTO myisam1 VALUES (1); 3078[START] INSERT INTO myisam2 VALUES (1); 3079include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3080include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3081[END] INSERT INTO myisam2 VALUES (1); 3082include/assert.inc [No warning or error should be generated.] 3083include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3084include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3085ROLLBACK; 3086Warnings: 3087Warning 1196 Some non-transactional changed tables couldn't be rolled back 3088SET GTID_NEXT = 'AUTOMATIC'; 3089include/assert.inc [Both counters should be 0] 3090---- MyISAM and MyISAM in one statement ---- 3091CREATE TRIGGER trig BEFORE INSERT ON myisam1 FOR EACH ROW INSERT INTO myisam2 VALUES (1); 3092# enforce_gtid_consistency=2 gtid_mode=2 gtid_next=AUTOMATIC 3093SET GTID_NEXT = 'AUTOMATIC'; 3094[START] INSERT INTO myisam2 VALUES (1); 3095include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3096include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3097[END] INSERT INTO myisam2 VALUES (1); 3098include/assert.inc [No warning or error should be generated.] 3099include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3100include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3101ROLLBACK; 3102SET GTID_NEXT = 'AUTOMATIC'; 3103include/assert.inc [Both counters should be 0] 3104DROP TRIGGER trig; 3105---- MyISAM followed by InnoDB, in one 'trx' ---- 3106# enforce_gtid_consistency=2 gtid_mode=2 gtid_next=AUTOMATIC 3107SET GTID_NEXT = 'AUTOMATIC'; 3108BEGIN; INSERT INTO myisam1 VALUES (1); 3109[START] INSERT INTO innodb VALUES (1); 3110include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3111include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3112[END] INSERT INTO innodb VALUES (1); 3113include/assert.inc [No warning or error should be generated.] 3114include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3115include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3116ROLLBACK; 3117Warnings: 3118Warning 1196 Some non-transactional changed tables couldn't be rolled back 3119SET GTID_NEXT = 'AUTOMATIC'; 3120include/assert.inc [Both counters should be 0] 3121SET SESSION BINLOG_FORMAT = MIXED; 3122---- InnoDB followed by temp MyISAM in one trx, binlog_format=mix ---- 3123CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 3124# enforce_gtid_consistency=2 gtid_mode=2 gtid_next=AUTOMATIC 3125SET GTID_NEXT = 'AUTOMATIC'; 3126BEGIN; INSERT INTO innodb VALUES (1); 3127[START] INSERT INTO tmp_myisam1 VALUES (1); 3128include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3129include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3130[END] INSERT INTO tmp_myisam1 VALUES (1); 3131include/assert.inc [No warning or error should be generated.] 3132include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3133include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3134ROLLBACK; 3135Warnings: 3136Warning 1196 Some non-transactional changed tables couldn't be rolled back 3137SET GTID_NEXT = 'AUTOMATIC'; 3138include/assert.inc [Both counters should be 0] 3139DROP TEMPORARY TABLE tmp_myisam1; 3140---- InnoDB and temp MyISAM in one autocommit statement, binlog_format=mix ---- 3141CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 3142CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 3143CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO tmp_myisam1 VALUES (1); INSERT INTO tmp_myisam2 VALUES (1); END; 3144# enforce_gtid_consistency=2 gtid_mode=2 gtid_next=AUTOMATIC 3145SET GTID_NEXT = 'AUTOMATIC'; 3146[START] INSERT INTO innodb VALUES (1); 3147include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3148include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3149[END] INSERT INTO innodb VALUES (1); 3150include/assert.inc [No warning or error should be generated.] 3151include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3152include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3153ROLLBACK; 3154SET GTID_NEXT = 'AUTOMATIC'; 3155include/assert.inc [Both counters should be 0] 3156DROP TRIGGER trig; 3157DROP TEMPORARY TABLE tmp_myisam1, tmp_myisam2; 3158SET BINLOG_FORMAT = ROW; 3159CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 3160CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 3161---- InnoDB followed by temp MyISAM in one trx, binlog_format=row ---- 3162# enforce_gtid_consistency=2 gtid_mode=2 gtid_next=AUTOMATIC 3163SET GTID_NEXT = 'AUTOMATIC'; 3164BEGIN; INSERT INTO innodb VALUES (1); 3165[START] INSERT INTO tmp_myisam1 VALUES (1); 3166include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3167include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3168[END] INSERT INTO tmp_myisam1 VALUES (1); 3169include/assert.inc [No warning or error should be generated.] 3170include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3171include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3172ROLLBACK; 3173Warnings: 3174Warning 1196 Some non-transactional changed tables couldn't be rolled back 3175SET GTID_NEXT = 'AUTOMATIC'; 3176include/assert.inc [Both counters should be 0] 3177---- InnoDB and temp MyISAM in one statement, binlog_format=row ---- 3178CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO tmp_myisam1 VALUES (1); INSERT INTO tmp_myisam2 VALUES (1); END; 3179# enforce_gtid_consistency=2 gtid_mode=2 gtid_next=AUTOMATIC 3180SET GTID_NEXT = 'AUTOMATIC'; 3181[START] INSERT INTO innodb VALUES (1); 3182include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3183include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3184[END] INSERT INTO innodb VALUES (1); 3185include/assert.inc [No warning or error should be generated.] 3186include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3187include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3188ROLLBACK; 3189SET GTID_NEXT = 'AUTOMATIC'; 3190include/assert.inc [Both counters should be 0] 3191DROP TRIGGER trig; 3192DROP TEMPORARY TABLE tmp_myisam1, tmp_myisam2; 3193SET BINLOG_FORMAT = #; 3194CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 3195CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 3196SET SQL_LOG_BIN = 0; 3197---- InnoDB and MyISAM in one statement, SQL_LOG_BIN=0 ---- 3198CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO myisam1 VALUES (1); INSERT INTO myisam2 VALUES (1); END; 3199# enforce_gtid_consistency=2 gtid_mode=2 gtid_next=AUTOMATIC 3200SET GTID_NEXT = 'AUTOMATIC'; 3201[START] INSERT INTO innodb VALUES (1); 3202include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3203include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3204[END] INSERT INTO innodb VALUES (1); 3205include/assert.inc [No warning or error should be generated.] 3206include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3207include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3208ROLLBACK; 3209SET GTID_NEXT = 'AUTOMATIC'; 3210include/assert.inc [Both counters should be 0] 3211DROP TRIGGER trig; 3212---- InnoDB followed by MyISAM, in one trx, SQL_LOG_BIN=0 ---- 3213# enforce_gtid_consistency=2 gtid_mode=2 gtid_next=AUTOMATIC 3214SET GTID_NEXT = 'AUTOMATIC'; 3215BEGIN; INSERT INTO innodb VALUES (1); 3216[START] INSERT INTO myisam1 VALUES (1); 3217include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3218include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3219[END] INSERT INTO myisam1 VALUES (1); 3220include/assert.inc [No warning or error should be generated.] 3221include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3222include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3223ROLLBACK; 3224Warnings: 3225Warning 1196 Some non-transactional changed tables couldn't be rolled back 3226SET GTID_NEXT = 'AUTOMATIC'; 3227include/assert.inc [Both counters should be 0] 3228---- InnoDB and MyISAM in one statement inside trx, SQL_LOG_BIN=0 ---- 3229CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO myisam1 VALUES (1); INSERT INTO myisam2 VALUES (1); END; 3230# enforce_gtid_consistency=2 gtid_mode=2 gtid_next=AUTOMATIC 3231SET GTID_NEXT = 'AUTOMATIC'; 3232BEGIN; 3233[START] INSERT INTO innodb VALUES (1); 3234include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3235include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3236[END] INSERT INTO innodb VALUES (1); 3237include/assert.inc [No warning or error should be generated.] 3238include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3239include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3240ROLLBACK; 3241Warnings: 3242Warning 1196 Some non-transactional changed tables couldn't be rolled back 3243SET GTID_NEXT = 'AUTOMATIC'; 3244include/assert.inc [Both counters should be 0] 3245DROP TRIGGER trig; 3246SET SQL_LOG_BIN = 1; 3247DROP TABLE myisam1, myisam2, tmp_myisam1, tmp_myisam2, innodb; 3248######## ENFORCE_GTID_CONSISTENCY=WARN GTID_MODE=ON_PERMISSIVE GTID_NEXT=ANONYMOUS ######## 3249CREATE TABLE myisam1 (a INT) ENGINE = MyISAM; 3250CREATE TABLE myisam2 (a INT) ENGINE = MyISAM; 3251CREATE TABLE innodb (a INT) ENGINE = InnoDB; 3252---- MyISAM followed by MyISAM, in one 'trx' ---- 3253# enforce_gtid_consistency=2 gtid_mode=2 gtid_next=ANONYMOUS 3254SET GTID_NEXT = 'ANONYMOUS'; 3255BEGIN; INSERT INTO myisam1 VALUES (1); 3256[START] INSERT INTO myisam2 VALUES (1); 3257include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3258include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3259[END] INSERT INTO myisam2 VALUES (1); 3260include/assert.inc [No warning or error should be generated.] 3261include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3262include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3263ROLLBACK; 3264Warnings: 3265Warning 1196 Some non-transactional changed tables couldn't be rolled back 3266SET GTID_NEXT = 'AUTOMATIC'; 3267include/assert.inc [Both counters should be 0] 3268---- MyISAM and MyISAM in one statement ---- 3269CREATE TRIGGER trig BEFORE INSERT ON myisam1 FOR EACH ROW INSERT INTO myisam2 VALUES (1); 3270# enforce_gtid_consistency=2 gtid_mode=2 gtid_next=ANONYMOUS 3271SET GTID_NEXT = 'ANONYMOUS'; 3272[START] INSERT INTO myisam2 VALUES (1); 3273include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3274include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3275[END] INSERT INTO myisam2 VALUES (1); 3276include/assert.inc [No warning or error should be generated.] 3277include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3278include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3279ROLLBACK; 3280SET GTID_NEXT = 'AUTOMATIC'; 3281include/assert.inc [Both counters should be 0] 3282DROP TRIGGER trig; 3283---- MyISAM followed by InnoDB, in one 'trx' ---- 3284# enforce_gtid_consistency=2 gtid_mode=2 gtid_next=ANONYMOUS 3285SET GTID_NEXT = 'ANONYMOUS'; 3286BEGIN; INSERT INTO myisam1 VALUES (1); 3287[START] INSERT INTO innodb VALUES (1); 3288include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3289include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3290[END] INSERT INTO innodb VALUES (1); 3291include/assert.inc [No warning or error should be generated.] 3292include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3293include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3294ROLLBACK; 3295Warnings: 3296Warning 1196 Some non-transactional changed tables couldn't be rolled back 3297SET GTID_NEXT = 'AUTOMATIC'; 3298include/assert.inc [Both counters should be 0] 3299SET SESSION BINLOG_FORMAT = MIXED; 3300---- InnoDB followed by temp MyISAM in one trx, binlog_format=mix ---- 3301CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 3302# enforce_gtid_consistency=2 gtid_mode=2 gtid_next=ANONYMOUS 3303SET GTID_NEXT = 'ANONYMOUS'; 3304BEGIN; INSERT INTO innodb VALUES (1); 3305[START] INSERT INTO tmp_myisam1 VALUES (1); 3306include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3307include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3308[END] INSERT INTO tmp_myisam1 VALUES (1); 3309include/assert.inc [No warning or error should be generated.] 3310include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3311include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3312ROLLBACK; 3313Warnings: 3314Warning 1196 Some non-transactional changed tables couldn't be rolled back 3315SET GTID_NEXT = 'AUTOMATIC'; 3316include/assert.inc [Both counters should be 0] 3317DROP TEMPORARY TABLE tmp_myisam1; 3318---- InnoDB and temp MyISAM in one autocommit statement, binlog_format=mix ---- 3319CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 3320CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 3321CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO tmp_myisam1 VALUES (1); INSERT INTO tmp_myisam2 VALUES (1); END; 3322# enforce_gtid_consistency=2 gtid_mode=2 gtid_next=ANONYMOUS 3323SET GTID_NEXT = 'ANONYMOUS'; 3324[START] INSERT INTO innodb VALUES (1); 3325include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3326include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3327[END] INSERT INTO innodb VALUES (1); 3328include/assert.inc [No warning or error should be generated.] 3329include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3330include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3331ROLLBACK; 3332SET GTID_NEXT = 'AUTOMATIC'; 3333include/assert.inc [Both counters should be 0] 3334DROP TRIGGER trig; 3335DROP TEMPORARY TABLE tmp_myisam1, tmp_myisam2; 3336SET BINLOG_FORMAT = ROW; 3337CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 3338CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 3339---- InnoDB followed by temp MyISAM in one trx, binlog_format=row ---- 3340# enforce_gtid_consistency=2 gtid_mode=2 gtid_next=ANONYMOUS 3341SET GTID_NEXT = 'ANONYMOUS'; 3342BEGIN; INSERT INTO innodb VALUES (1); 3343[START] INSERT INTO tmp_myisam1 VALUES (1); 3344include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3345include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3346[END] INSERT INTO tmp_myisam1 VALUES (1); 3347include/assert.inc [No warning or error should be generated.] 3348include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3349include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3350ROLLBACK; 3351Warnings: 3352Warning 1196 Some non-transactional changed tables couldn't be rolled back 3353SET GTID_NEXT = 'AUTOMATIC'; 3354include/assert.inc [Both counters should be 0] 3355---- InnoDB and temp MyISAM in one statement, binlog_format=row ---- 3356CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO tmp_myisam1 VALUES (1); INSERT INTO tmp_myisam2 VALUES (1); END; 3357# enforce_gtid_consistency=2 gtid_mode=2 gtid_next=ANONYMOUS 3358SET GTID_NEXT = 'ANONYMOUS'; 3359[START] INSERT INTO innodb VALUES (1); 3360include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3361include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3362[END] INSERT INTO innodb VALUES (1); 3363include/assert.inc [No warning or error should be generated.] 3364include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3365include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3366ROLLBACK; 3367SET GTID_NEXT = 'AUTOMATIC'; 3368include/assert.inc [Both counters should be 0] 3369DROP TRIGGER trig; 3370DROP TEMPORARY TABLE tmp_myisam1, tmp_myisam2; 3371SET BINLOG_FORMAT = #; 3372CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 3373CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 3374SET SQL_LOG_BIN = 0; 3375---- InnoDB and MyISAM in one statement, SQL_LOG_BIN=0 ---- 3376CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO myisam1 VALUES (1); INSERT INTO myisam2 VALUES (1); END; 3377# enforce_gtid_consistency=2 gtid_mode=2 gtid_next=ANONYMOUS 3378SET GTID_NEXT = 'ANONYMOUS'; 3379[START] INSERT INTO innodb VALUES (1); 3380include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3381include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3382[END] INSERT INTO innodb VALUES (1); 3383include/assert.inc [No warning or error should be generated.] 3384include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3385include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3386ROLLBACK; 3387SET GTID_NEXT = 'AUTOMATIC'; 3388include/assert.inc [Both counters should be 0] 3389DROP TRIGGER trig; 3390---- InnoDB followed by MyISAM, in one trx, SQL_LOG_BIN=0 ---- 3391# enforce_gtid_consistency=2 gtid_mode=2 gtid_next=ANONYMOUS 3392SET GTID_NEXT = 'ANONYMOUS'; 3393BEGIN; INSERT INTO innodb VALUES (1); 3394[START] INSERT INTO myisam1 VALUES (1); 3395include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3396include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3397[END] INSERT INTO myisam1 VALUES (1); 3398include/assert.inc [No warning or error should be generated.] 3399include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3400include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3401ROLLBACK; 3402Warnings: 3403Warning 1196 Some non-transactional changed tables couldn't be rolled back 3404SET GTID_NEXT = 'AUTOMATIC'; 3405include/assert.inc [Both counters should be 0] 3406---- InnoDB and MyISAM in one statement inside trx, SQL_LOG_BIN=0 ---- 3407CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO myisam1 VALUES (1); INSERT INTO myisam2 VALUES (1); END; 3408# enforce_gtid_consistency=2 gtid_mode=2 gtid_next=ANONYMOUS 3409SET GTID_NEXT = 'ANONYMOUS'; 3410BEGIN; 3411[START] INSERT INTO innodb VALUES (1); 3412include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3413include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3414[END] INSERT INTO innodb VALUES (1); 3415include/assert.inc [No warning or error should be generated.] 3416include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3417include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3418ROLLBACK; 3419Warnings: 3420Warning 1196 Some non-transactional changed tables couldn't be rolled back 3421SET GTID_NEXT = 'AUTOMATIC'; 3422include/assert.inc [Both counters should be 0] 3423DROP TRIGGER trig; 3424SET SQL_LOG_BIN = 1; 3425DROP TABLE myisam1, myisam2, tmp_myisam1, tmp_myisam2, innodb; 3426######## ENFORCE_GTID_CONSISTENCY=WARN GTID_MODE=ON_PERMISSIVE GTID_NEXT=GTID ######## 3427CREATE TABLE myisam1 (a INT) ENGINE = MyISAM; 3428CREATE TABLE myisam2 (a INT) ENGINE = MyISAM; 3429CREATE TABLE innodb (a INT) ENGINE = InnoDB; 3430---- MyISAM and MyISAM in one statement ---- 3431CREATE TRIGGER trig BEFORE INSERT ON myisam1 FOR EACH ROW INSERT INTO myisam2 VALUES (1); 3432# enforce_gtid_consistency=2 gtid_mode=2 gtid_next=GTID 3433SET GTID_NEXT = 'GTID'; 3434[START] INSERT INTO myisam2 VALUES (1); 3435include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3436include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3437[END] INSERT INTO myisam2 VALUES (1); 3438include/assert.inc [No warning or error should be generated.] 3439include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3440include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3441ROLLBACK; 3442SET GTID_NEXT = 'AUTOMATIC'; 3443include/assert.inc [Both counters should be 0] 3444DROP TRIGGER trig; 3445SET SESSION BINLOG_FORMAT = MIXED; 3446---- InnoDB followed by temp MyISAM in one trx, binlog_format=mix ---- 3447CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 3448# enforce_gtid_consistency=2 gtid_mode=2 gtid_next=GTID 3449SET GTID_NEXT = 'GTID'; 3450BEGIN; INSERT INTO innodb VALUES (1); 3451[START] INSERT INTO tmp_myisam1 VALUES (1); 3452include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3453include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3454[END] INSERT INTO tmp_myisam1 VALUES (1); 3455include/assert.inc [No warning or error should be generated.] 3456include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3457include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3458ROLLBACK; 3459Warnings: 3460Warning 1196 Some non-transactional changed tables couldn't be rolled back 3461SET GTID_NEXT = 'AUTOMATIC'; 3462include/assert.inc [Both counters should be 0] 3463DROP TEMPORARY TABLE tmp_myisam1; 3464---- InnoDB and temp MyISAM in one autocommit statement, binlog_format=mix ---- 3465CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 3466CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 3467CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO tmp_myisam1 VALUES (1); INSERT INTO tmp_myisam2 VALUES (1); END; 3468# enforce_gtid_consistency=2 gtid_mode=2 gtid_next=GTID 3469SET GTID_NEXT = 'GTID'; 3470[START] INSERT INTO innodb VALUES (1); 3471include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3472include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3473[END] INSERT INTO innodb VALUES (1); 3474include/assert.inc [No warning or error should be generated.] 3475include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3476include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3477ROLLBACK; 3478SET GTID_NEXT = 'AUTOMATIC'; 3479include/assert.inc [Both counters should be 0] 3480DROP TRIGGER trig; 3481DROP TEMPORARY TABLE tmp_myisam1, tmp_myisam2; 3482SET BINLOG_FORMAT = ROW; 3483CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 3484CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 3485---- InnoDB followed by temp MyISAM in one trx, binlog_format=row ---- 3486# enforce_gtid_consistency=2 gtid_mode=2 gtid_next=GTID 3487SET GTID_NEXT = 'GTID'; 3488BEGIN; INSERT INTO innodb VALUES (1); 3489[START] INSERT INTO tmp_myisam1 VALUES (1); 3490include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3491include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3492[END] INSERT INTO tmp_myisam1 VALUES (1); 3493include/assert.inc [No warning or error should be generated.] 3494include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3495include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3496ROLLBACK; 3497Warnings: 3498Warning 1196 Some non-transactional changed tables couldn't be rolled back 3499SET GTID_NEXT = 'AUTOMATIC'; 3500include/assert.inc [Both counters should be 0] 3501---- InnoDB and temp MyISAM in one statement, binlog_format=row ---- 3502CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO tmp_myisam1 VALUES (1); INSERT INTO tmp_myisam2 VALUES (1); END; 3503# enforce_gtid_consistency=2 gtid_mode=2 gtid_next=GTID 3504SET GTID_NEXT = 'GTID'; 3505[START] INSERT INTO innodb VALUES (1); 3506include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3507include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3508[END] INSERT INTO innodb VALUES (1); 3509include/assert.inc [No warning or error should be generated.] 3510include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3511include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3512ROLLBACK; 3513SET GTID_NEXT = 'AUTOMATIC'; 3514include/assert.inc [Both counters should be 0] 3515DROP TRIGGER trig; 3516DROP TEMPORARY TABLE tmp_myisam1, tmp_myisam2; 3517SET BINLOG_FORMAT = #; 3518CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 3519CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 3520SET SQL_LOG_BIN = 0; 3521---- InnoDB and MyISAM in one statement, SQL_LOG_BIN=0 ---- 3522CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO myisam1 VALUES (1); INSERT INTO myisam2 VALUES (1); END; 3523# enforce_gtid_consistency=2 gtid_mode=2 gtid_next=GTID 3524SET GTID_NEXT = 'GTID'; 3525[START] INSERT INTO innodb VALUES (1); 3526include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3527include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3528[END] INSERT INTO innodb VALUES (1); 3529include/assert.inc [No warning or error should be generated.] 3530include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3531include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3532ROLLBACK; 3533SET GTID_NEXT = 'AUTOMATIC'; 3534include/assert.inc [Both counters should be 0] 3535DROP TRIGGER trig; 3536---- InnoDB followed by MyISAM, in one trx, SQL_LOG_BIN=0 ---- 3537# enforce_gtid_consistency=2 gtid_mode=2 gtid_next=GTID 3538SET GTID_NEXT = 'GTID'; 3539BEGIN; INSERT INTO innodb VALUES (1); 3540[START] INSERT INTO myisam1 VALUES (1); 3541include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3542include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3543[END] INSERT INTO myisam1 VALUES (1); 3544include/assert.inc [No warning or error should be generated.] 3545include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3546include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3547ROLLBACK; 3548Warnings: 3549Warning 1196 Some non-transactional changed tables couldn't be rolled back 3550SET GTID_NEXT = 'AUTOMATIC'; 3551include/assert.inc [Both counters should be 0] 3552---- InnoDB and MyISAM in one statement inside trx, SQL_LOG_BIN=0 ---- 3553CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO myisam1 VALUES (1); INSERT INTO myisam2 VALUES (1); END; 3554# enforce_gtid_consistency=2 gtid_mode=2 gtid_next=GTID 3555SET GTID_NEXT = 'GTID'; 3556BEGIN; 3557[START] INSERT INTO innodb VALUES (1); 3558include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3559include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3560[END] INSERT INTO innodb VALUES (1); 3561include/assert.inc [No warning or error should be generated.] 3562include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3563include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3564ROLLBACK; 3565Warnings: 3566Warning 1196 Some non-transactional changed tables couldn't be rolled back 3567SET GTID_NEXT = 'AUTOMATIC'; 3568include/assert.inc [Both counters should be 0] 3569DROP TRIGGER trig; 3570SET SQL_LOG_BIN = 1; 3571DROP TABLE myisam1, myisam2, tmp_myisam1, tmp_myisam2, innodb; 3572SET GLOBAL GTID_MODE = 1; 3573######## ENFORCE_GTID_CONSISTENCY=WARN GTID_MODE=OFF_PERMISSIVE GTID_NEXT=AUTOMATIC ######## 3574CREATE TABLE myisam1 (a INT) ENGINE = MyISAM; 3575CREATE TABLE myisam2 (a INT) ENGINE = MyISAM; 3576CREATE TABLE innodb (a INT) ENGINE = InnoDB; 3577---- MyISAM followed by MyISAM, in one 'trx' ---- 3578# enforce_gtid_consistency=2 gtid_mode=1 gtid_next=AUTOMATIC 3579SET GTID_NEXT = 'AUTOMATIC'; 3580BEGIN; INSERT INTO myisam1 VALUES (1); 3581[START] INSERT INTO myisam2 VALUES (1); 3582include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3583include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3584[END] INSERT INTO myisam2 VALUES (1); 3585include/assert.inc [No warning or error should be generated.] 3586include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3587include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3588ROLLBACK; 3589Warnings: 3590Warning 1196 Some non-transactional changed tables couldn't be rolled back 3591SET GTID_NEXT = 'AUTOMATIC'; 3592include/assert.inc [Both counters should be 0] 3593---- MyISAM and MyISAM in one statement ---- 3594CREATE TRIGGER trig BEFORE INSERT ON myisam1 FOR EACH ROW INSERT INTO myisam2 VALUES (1); 3595# enforce_gtid_consistency=2 gtid_mode=1 gtid_next=AUTOMATIC 3596SET GTID_NEXT = 'AUTOMATIC'; 3597[START] INSERT INTO myisam2 VALUES (1); 3598include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3599include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3600[END] INSERT INTO myisam2 VALUES (1); 3601include/assert.inc [No warning or error should be generated.] 3602include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3603include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3604ROLLBACK; 3605SET GTID_NEXT = 'AUTOMATIC'; 3606include/assert.inc [Both counters should be 0] 3607DROP TRIGGER trig; 3608---- MyISAM followed by InnoDB, in one 'trx' ---- 3609# enforce_gtid_consistency=2 gtid_mode=1 gtid_next=AUTOMATIC 3610SET GTID_NEXT = 'AUTOMATIC'; 3611BEGIN; INSERT INTO myisam1 VALUES (1); 3612[START] INSERT INTO innodb VALUES (1); 3613include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3614include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3615[END] INSERT INTO innodb VALUES (1); 3616include/assert.inc [No warning or error should be generated.] 3617include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3618include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3619ROLLBACK; 3620Warnings: 3621Warning 1196 Some non-transactional changed tables couldn't be rolled back 3622SET GTID_NEXT = 'AUTOMATIC'; 3623include/assert.inc [Both counters should be 0] 3624SET SESSION BINLOG_FORMAT = MIXED; 3625---- InnoDB followed by temp MyISAM in one trx, binlog_format=mix ---- 3626CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 3627# enforce_gtid_consistency=2 gtid_mode=1 gtid_next=AUTOMATIC 3628SET GTID_NEXT = 'AUTOMATIC'; 3629BEGIN; INSERT INTO innodb VALUES (1); 3630[START] INSERT INTO tmp_myisam1 VALUES (1); 3631include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3632include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3633[END] INSERT INTO tmp_myisam1 VALUES (1); 3634include/assert.inc [No warning or error should be generated.] 3635include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3636include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3637ROLLBACK; 3638Warnings: 3639Warning 1196 Some non-transactional changed tables couldn't be rolled back 3640SET GTID_NEXT = 'AUTOMATIC'; 3641include/assert.inc [Both counters should be 0] 3642DROP TEMPORARY TABLE tmp_myisam1; 3643---- InnoDB and temp MyISAM in one autocommit statement, binlog_format=mix ---- 3644CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 3645CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 3646CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO tmp_myisam1 VALUES (1); INSERT INTO tmp_myisam2 VALUES (1); END; 3647# enforce_gtid_consistency=2 gtid_mode=1 gtid_next=AUTOMATIC 3648SET GTID_NEXT = 'AUTOMATIC'; 3649[START] INSERT INTO innodb VALUES (1); 3650include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3651include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3652[END] INSERT INTO innodb VALUES (1); 3653include/assert.inc [No warning or error should be generated.] 3654include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3655include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3656ROLLBACK; 3657SET GTID_NEXT = 'AUTOMATIC'; 3658include/assert.inc [Both counters should be 0] 3659DROP TRIGGER trig; 3660DROP TEMPORARY TABLE tmp_myisam1, tmp_myisam2; 3661SET BINLOG_FORMAT = ROW; 3662CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 3663CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 3664---- InnoDB followed by temp MyISAM in one trx, binlog_format=row ---- 3665# enforce_gtid_consistency=2 gtid_mode=1 gtid_next=AUTOMATIC 3666SET GTID_NEXT = 'AUTOMATIC'; 3667BEGIN; INSERT INTO innodb VALUES (1); 3668[START] INSERT INTO tmp_myisam1 VALUES (1); 3669include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3670include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3671[END] INSERT INTO tmp_myisam1 VALUES (1); 3672include/assert.inc [No warning or error should be generated.] 3673include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3674include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3675ROLLBACK; 3676Warnings: 3677Warning 1196 Some non-transactional changed tables couldn't be rolled back 3678SET GTID_NEXT = 'AUTOMATIC'; 3679include/assert.inc [Both counters should be 0] 3680---- InnoDB and temp MyISAM in one statement, binlog_format=row ---- 3681CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO tmp_myisam1 VALUES (1); INSERT INTO tmp_myisam2 VALUES (1); END; 3682# enforce_gtid_consistency=2 gtid_mode=1 gtid_next=AUTOMATIC 3683SET GTID_NEXT = 'AUTOMATIC'; 3684[START] INSERT INTO innodb VALUES (1); 3685include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3686include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3687[END] INSERT INTO innodb VALUES (1); 3688include/assert.inc [No warning or error should be generated.] 3689include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3690include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3691ROLLBACK; 3692SET GTID_NEXT = 'AUTOMATIC'; 3693include/assert.inc [Both counters should be 0] 3694DROP TRIGGER trig; 3695DROP TEMPORARY TABLE tmp_myisam1, tmp_myisam2; 3696SET BINLOG_FORMAT = #; 3697CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 3698CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 3699SET SQL_LOG_BIN = 0; 3700---- InnoDB and MyISAM in one statement, SQL_LOG_BIN=0 ---- 3701CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO myisam1 VALUES (1); INSERT INTO myisam2 VALUES (1); END; 3702# enforce_gtid_consistency=2 gtid_mode=1 gtid_next=AUTOMATIC 3703SET GTID_NEXT = 'AUTOMATIC'; 3704[START] INSERT INTO innodb VALUES (1); 3705include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3706include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3707[END] INSERT INTO innodb VALUES (1); 3708include/assert.inc [No warning or error should be generated.] 3709include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3710include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3711ROLLBACK; 3712SET GTID_NEXT = 'AUTOMATIC'; 3713include/assert.inc [Both counters should be 0] 3714DROP TRIGGER trig; 3715---- InnoDB followed by MyISAM, in one trx, SQL_LOG_BIN=0 ---- 3716# enforce_gtid_consistency=2 gtid_mode=1 gtid_next=AUTOMATIC 3717SET GTID_NEXT = 'AUTOMATIC'; 3718BEGIN; INSERT INTO innodb VALUES (1); 3719[START] INSERT INTO myisam1 VALUES (1); 3720include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3721include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3722[END] INSERT INTO myisam1 VALUES (1); 3723include/assert.inc [No warning or error should be generated.] 3724include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3725include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3726ROLLBACK; 3727Warnings: 3728Warning 1196 Some non-transactional changed tables couldn't be rolled back 3729SET GTID_NEXT = 'AUTOMATIC'; 3730include/assert.inc [Both counters should be 0] 3731---- InnoDB and MyISAM in one statement inside trx, SQL_LOG_BIN=0 ---- 3732CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO myisam1 VALUES (1); INSERT INTO myisam2 VALUES (1); END; 3733# enforce_gtid_consistency=2 gtid_mode=1 gtid_next=AUTOMATIC 3734SET GTID_NEXT = 'AUTOMATIC'; 3735BEGIN; 3736[START] INSERT INTO innodb VALUES (1); 3737include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3738include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3739[END] INSERT INTO innodb VALUES (1); 3740include/assert.inc [No warning or error should be generated.] 3741include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3742include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3743ROLLBACK; 3744Warnings: 3745Warning 1196 Some non-transactional changed tables couldn't be rolled back 3746SET GTID_NEXT = 'AUTOMATIC'; 3747include/assert.inc [Both counters should be 0] 3748DROP TRIGGER trig; 3749SET SQL_LOG_BIN = 1; 3750DROP TABLE myisam1, myisam2, tmp_myisam1, tmp_myisam2, innodb; 3751######## ENFORCE_GTID_CONSISTENCY=WARN GTID_MODE=OFF_PERMISSIVE GTID_NEXT=ANONYMOUS ######## 3752CREATE TABLE myisam1 (a INT) ENGINE = MyISAM; 3753CREATE TABLE myisam2 (a INT) ENGINE = MyISAM; 3754CREATE TABLE innodb (a INT) ENGINE = InnoDB; 3755---- MyISAM followed by MyISAM, in one 'trx' ---- 3756# enforce_gtid_consistency=2 gtid_mode=1 gtid_next=ANONYMOUS 3757SET GTID_NEXT = 'ANONYMOUS'; 3758BEGIN; INSERT INTO myisam1 VALUES (1); 3759[START] INSERT INTO myisam2 VALUES (1); 3760include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3761include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3762[END] INSERT INTO myisam2 VALUES (1); 3763include/assert.inc [No warning or error should be generated.] 3764include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3765include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3766ROLLBACK; 3767Warnings: 3768Warning 1196 Some non-transactional changed tables couldn't be rolled back 3769SET GTID_NEXT = 'AUTOMATIC'; 3770include/assert.inc [Both counters should be 0] 3771---- MyISAM and MyISAM in one statement ---- 3772CREATE TRIGGER trig BEFORE INSERT ON myisam1 FOR EACH ROW INSERT INTO myisam2 VALUES (1); 3773# enforce_gtid_consistency=2 gtid_mode=1 gtid_next=ANONYMOUS 3774SET GTID_NEXT = 'ANONYMOUS'; 3775[START] INSERT INTO myisam2 VALUES (1); 3776include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3777include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3778[END] INSERT INTO myisam2 VALUES (1); 3779include/assert.inc [No warning or error should be generated.] 3780include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3781include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3782ROLLBACK; 3783SET GTID_NEXT = 'AUTOMATIC'; 3784include/assert.inc [Both counters should be 0] 3785DROP TRIGGER trig; 3786---- MyISAM followed by InnoDB, in one 'trx' ---- 3787# enforce_gtid_consistency=2 gtid_mode=1 gtid_next=ANONYMOUS 3788SET GTID_NEXT = 'ANONYMOUS'; 3789BEGIN; INSERT INTO myisam1 VALUES (1); 3790[START] INSERT INTO innodb VALUES (1); 3791include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3792include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3793[END] INSERT INTO innodb VALUES (1); 3794include/assert.inc [No warning or error should be generated.] 3795include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3796include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3797ROLLBACK; 3798Warnings: 3799Warning 1196 Some non-transactional changed tables couldn't be rolled back 3800SET GTID_NEXT = 'AUTOMATIC'; 3801include/assert.inc [Both counters should be 0] 3802SET SESSION BINLOG_FORMAT = MIXED; 3803---- InnoDB followed by temp MyISAM in one trx, binlog_format=mix ---- 3804CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 3805# enforce_gtid_consistency=2 gtid_mode=1 gtid_next=ANONYMOUS 3806SET GTID_NEXT = 'ANONYMOUS'; 3807BEGIN; INSERT INTO innodb VALUES (1); 3808[START] INSERT INTO tmp_myisam1 VALUES (1); 3809include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3810include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3811[END] INSERT INTO tmp_myisam1 VALUES (1); 3812include/assert.inc [No warning or error should be generated.] 3813include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3814include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3815ROLLBACK; 3816Warnings: 3817Warning 1196 Some non-transactional changed tables couldn't be rolled back 3818SET GTID_NEXT = 'AUTOMATIC'; 3819include/assert.inc [Both counters should be 0] 3820DROP TEMPORARY TABLE tmp_myisam1; 3821---- InnoDB and temp MyISAM in one autocommit statement, binlog_format=mix ---- 3822CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 3823CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 3824CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO tmp_myisam1 VALUES (1); INSERT INTO tmp_myisam2 VALUES (1); END; 3825# enforce_gtid_consistency=2 gtid_mode=1 gtid_next=ANONYMOUS 3826SET GTID_NEXT = 'ANONYMOUS'; 3827[START] INSERT INTO innodb VALUES (1); 3828include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3829include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3830[END] INSERT INTO innodb VALUES (1); 3831include/assert.inc [No warning or error should be generated.] 3832include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3833include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3834ROLLBACK; 3835SET GTID_NEXT = 'AUTOMATIC'; 3836include/assert.inc [Both counters should be 0] 3837DROP TRIGGER trig; 3838DROP TEMPORARY TABLE tmp_myisam1, tmp_myisam2; 3839SET BINLOG_FORMAT = ROW; 3840CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 3841CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 3842---- InnoDB followed by temp MyISAM in one trx, binlog_format=row ---- 3843# enforce_gtid_consistency=2 gtid_mode=1 gtid_next=ANONYMOUS 3844SET GTID_NEXT = 'ANONYMOUS'; 3845BEGIN; INSERT INTO innodb VALUES (1); 3846[START] INSERT INTO tmp_myisam1 VALUES (1); 3847include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3848include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3849[END] INSERT INTO tmp_myisam1 VALUES (1); 3850include/assert.inc [No warning or error should be generated.] 3851include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3852include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3853ROLLBACK; 3854Warnings: 3855Warning 1196 Some non-transactional changed tables couldn't be rolled back 3856SET GTID_NEXT = 'AUTOMATIC'; 3857include/assert.inc [Both counters should be 0] 3858---- InnoDB and temp MyISAM in one statement, binlog_format=row ---- 3859CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO tmp_myisam1 VALUES (1); INSERT INTO tmp_myisam2 VALUES (1); END; 3860# enforce_gtid_consistency=2 gtid_mode=1 gtid_next=ANONYMOUS 3861SET GTID_NEXT = 'ANONYMOUS'; 3862[START] INSERT INTO innodb VALUES (1); 3863include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3864include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3865[END] INSERT INTO innodb VALUES (1); 3866include/assert.inc [No warning or error should be generated.] 3867include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3868include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3869ROLLBACK; 3870SET GTID_NEXT = 'AUTOMATIC'; 3871include/assert.inc [Both counters should be 0] 3872DROP TRIGGER trig; 3873DROP TEMPORARY TABLE tmp_myisam1, tmp_myisam2; 3874SET BINLOG_FORMAT = #; 3875CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 3876CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 3877SET SQL_LOG_BIN = 0; 3878---- InnoDB and MyISAM in one statement, SQL_LOG_BIN=0 ---- 3879CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO myisam1 VALUES (1); INSERT INTO myisam2 VALUES (1); END; 3880# enforce_gtid_consistency=2 gtid_mode=1 gtid_next=ANONYMOUS 3881SET GTID_NEXT = 'ANONYMOUS'; 3882[START] INSERT INTO innodb VALUES (1); 3883include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3884include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3885[END] INSERT INTO innodb VALUES (1); 3886include/assert.inc [No warning or error should be generated.] 3887include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3888include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3889ROLLBACK; 3890SET GTID_NEXT = 'AUTOMATIC'; 3891include/assert.inc [Both counters should be 0] 3892DROP TRIGGER trig; 3893---- InnoDB followed by MyISAM, in one trx, SQL_LOG_BIN=0 ---- 3894# enforce_gtid_consistency=2 gtid_mode=1 gtid_next=ANONYMOUS 3895SET GTID_NEXT = 'ANONYMOUS'; 3896BEGIN; INSERT INTO innodb VALUES (1); 3897[START] INSERT INTO myisam1 VALUES (1); 3898include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3899include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3900[END] INSERT INTO myisam1 VALUES (1); 3901include/assert.inc [No warning or error should be generated.] 3902include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3903include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3904ROLLBACK; 3905Warnings: 3906Warning 1196 Some non-transactional changed tables couldn't be rolled back 3907SET GTID_NEXT = 'AUTOMATIC'; 3908include/assert.inc [Both counters should be 0] 3909---- InnoDB and MyISAM in one statement inside trx, SQL_LOG_BIN=0 ---- 3910CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO myisam1 VALUES (1); INSERT INTO myisam2 VALUES (1); END; 3911# enforce_gtid_consistency=2 gtid_mode=1 gtid_next=ANONYMOUS 3912SET GTID_NEXT = 'ANONYMOUS'; 3913BEGIN; 3914[START] INSERT INTO innodb VALUES (1); 3915include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3916include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3917[END] INSERT INTO innodb VALUES (1); 3918include/assert.inc [No warning or error should be generated.] 3919include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3920include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3921ROLLBACK; 3922Warnings: 3923Warning 1196 Some non-transactional changed tables couldn't be rolled back 3924SET GTID_NEXT = 'AUTOMATIC'; 3925include/assert.inc [Both counters should be 0] 3926DROP TRIGGER trig; 3927SET SQL_LOG_BIN = 1; 3928DROP TABLE myisam1, myisam2, tmp_myisam1, tmp_myisam2, innodb; 3929######## ENFORCE_GTID_CONSISTENCY=WARN GTID_MODE=OFF_PERMISSIVE GTID_NEXT=GTID ######## 3930CREATE TABLE myisam1 (a INT) ENGINE = MyISAM; 3931CREATE TABLE myisam2 (a INT) ENGINE = MyISAM; 3932CREATE TABLE innodb (a INT) ENGINE = InnoDB; 3933---- MyISAM and MyISAM in one statement ---- 3934CREATE TRIGGER trig BEFORE INSERT ON myisam1 FOR EACH ROW INSERT INTO myisam2 VALUES (1); 3935# enforce_gtid_consistency=2 gtid_mode=1 gtid_next=GTID 3936SET GTID_NEXT = 'GTID'; 3937[START] INSERT INTO myisam2 VALUES (1); 3938include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3939include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3940[END] INSERT INTO myisam2 VALUES (1); 3941include/assert.inc [No warning or error should be generated.] 3942include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3943include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3944ROLLBACK; 3945SET GTID_NEXT = 'AUTOMATIC'; 3946include/assert.inc [Both counters should be 0] 3947DROP TRIGGER trig; 3948SET SESSION BINLOG_FORMAT = MIXED; 3949---- InnoDB followed by temp MyISAM in one trx, binlog_format=mix ---- 3950CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 3951# enforce_gtid_consistency=2 gtid_mode=1 gtid_next=GTID 3952SET GTID_NEXT = 'GTID'; 3953BEGIN; INSERT INTO innodb VALUES (1); 3954[START] INSERT INTO tmp_myisam1 VALUES (1); 3955include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3956include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3957[END] INSERT INTO tmp_myisam1 VALUES (1); 3958include/assert.inc [No warning or error should be generated.] 3959include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3960include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3961ROLLBACK; 3962Warnings: 3963Warning 1196 Some non-transactional changed tables couldn't be rolled back 3964SET GTID_NEXT = 'AUTOMATIC'; 3965include/assert.inc [Both counters should be 0] 3966DROP TEMPORARY TABLE tmp_myisam1; 3967---- InnoDB and temp MyISAM in one autocommit statement, binlog_format=mix ---- 3968CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 3969CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 3970CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO tmp_myisam1 VALUES (1); INSERT INTO tmp_myisam2 VALUES (1); END; 3971# enforce_gtid_consistency=2 gtid_mode=1 gtid_next=GTID 3972SET GTID_NEXT = 'GTID'; 3973[START] INSERT INTO innodb VALUES (1); 3974include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3975include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3976[END] INSERT INTO innodb VALUES (1); 3977include/assert.inc [No warning or error should be generated.] 3978include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3979include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3980ROLLBACK; 3981SET GTID_NEXT = 'AUTOMATIC'; 3982include/assert.inc [Both counters should be 0] 3983DROP TRIGGER trig; 3984DROP TEMPORARY TABLE tmp_myisam1, tmp_myisam2; 3985SET BINLOG_FORMAT = ROW; 3986CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 3987CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 3988---- InnoDB followed by temp MyISAM in one trx, binlog_format=row ---- 3989# enforce_gtid_consistency=2 gtid_mode=1 gtid_next=GTID 3990SET GTID_NEXT = 'GTID'; 3991BEGIN; INSERT INTO innodb VALUES (1); 3992[START] INSERT INTO tmp_myisam1 VALUES (1); 3993include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3994include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3995[END] INSERT INTO tmp_myisam1 VALUES (1); 3996include/assert.inc [No warning or error should be generated.] 3997include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3998include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 3999ROLLBACK; 4000Warnings: 4001Warning 1196 Some non-transactional changed tables couldn't be rolled back 4002SET GTID_NEXT = 'AUTOMATIC'; 4003include/assert.inc [Both counters should be 0] 4004---- InnoDB and temp MyISAM in one statement, binlog_format=row ---- 4005CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO tmp_myisam1 VALUES (1); INSERT INTO tmp_myisam2 VALUES (1); END; 4006# enforce_gtid_consistency=2 gtid_mode=1 gtid_next=GTID 4007SET GTID_NEXT = 'GTID'; 4008[START] INSERT INTO innodb VALUES (1); 4009include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4010include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4011[END] INSERT INTO innodb VALUES (1); 4012include/assert.inc [No warning or error should be generated.] 4013include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4014include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4015ROLLBACK; 4016SET GTID_NEXT = 'AUTOMATIC'; 4017include/assert.inc [Both counters should be 0] 4018DROP TRIGGER trig; 4019DROP TEMPORARY TABLE tmp_myisam1, tmp_myisam2; 4020SET BINLOG_FORMAT = #; 4021CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 4022CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 4023SET SQL_LOG_BIN = 0; 4024---- InnoDB and MyISAM in one statement, SQL_LOG_BIN=0 ---- 4025CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO myisam1 VALUES (1); INSERT INTO myisam2 VALUES (1); END; 4026# enforce_gtid_consistency=2 gtid_mode=1 gtid_next=GTID 4027SET GTID_NEXT = 'GTID'; 4028[START] INSERT INTO innodb VALUES (1); 4029include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4030include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4031[END] INSERT INTO innodb VALUES (1); 4032include/assert.inc [No warning or error should be generated.] 4033include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4034include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4035ROLLBACK; 4036SET GTID_NEXT = 'AUTOMATIC'; 4037include/assert.inc [Both counters should be 0] 4038DROP TRIGGER trig; 4039---- InnoDB followed by MyISAM, in one trx, SQL_LOG_BIN=0 ---- 4040# enforce_gtid_consistency=2 gtid_mode=1 gtid_next=GTID 4041SET GTID_NEXT = 'GTID'; 4042BEGIN; INSERT INTO innodb VALUES (1); 4043[START] INSERT INTO myisam1 VALUES (1); 4044include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4045include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4046[END] INSERT INTO myisam1 VALUES (1); 4047include/assert.inc [No warning or error should be generated.] 4048include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4049include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4050ROLLBACK; 4051Warnings: 4052Warning 1196 Some non-transactional changed tables couldn't be rolled back 4053SET GTID_NEXT = 'AUTOMATIC'; 4054include/assert.inc [Both counters should be 0] 4055---- InnoDB and MyISAM in one statement inside trx, SQL_LOG_BIN=0 ---- 4056CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO myisam1 VALUES (1); INSERT INTO myisam2 VALUES (1); END; 4057# enforce_gtid_consistency=2 gtid_mode=1 gtid_next=GTID 4058SET GTID_NEXT = 'GTID'; 4059BEGIN; 4060[START] INSERT INTO innodb VALUES (1); 4061include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4062include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4063[END] INSERT INTO innodb VALUES (1); 4064include/assert.inc [No warning or error should be generated.] 4065include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4066include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4067ROLLBACK; 4068Warnings: 4069Warning 1196 Some non-transactional changed tables couldn't be rolled back 4070SET GTID_NEXT = 'AUTOMATIC'; 4071include/assert.inc [Both counters should be 0] 4072DROP TRIGGER trig; 4073SET SQL_LOG_BIN = 1; 4074DROP TABLE myisam1, myisam2, tmp_myisam1, tmp_myisam2, innodb; 4075SET GLOBAL GTID_MODE = 0; 4076######## ENFORCE_GTID_CONSISTENCY=WARN GTID_MODE=OFF GTID_NEXT=AUTOMATIC ######## 4077CREATE TABLE myisam1 (a INT) ENGINE = MyISAM; 4078CREATE TABLE myisam2 (a INT) ENGINE = MyISAM; 4079CREATE TABLE innodb (a INT) ENGINE = InnoDB; 4080---- MyISAM followed by MyISAM, in one 'trx' ---- 4081# enforce_gtid_consistency=2 gtid_mode=0 gtid_next=AUTOMATIC 4082SET GTID_NEXT = 'AUTOMATIC'; 4083BEGIN; INSERT INTO myisam1 VALUES (1); 4084[START] INSERT INTO myisam2 VALUES (1); 4085include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4086include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4087[END] INSERT INTO myisam2 VALUES (1); 4088include/assert.inc [No warning or error should be generated.] 4089include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4090include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4091ROLLBACK; 4092Warnings: 4093Warning 1196 Some non-transactional changed tables couldn't be rolled back 4094SET GTID_NEXT = 'AUTOMATIC'; 4095include/assert.inc [Both counters should be 0] 4096---- MyISAM and MyISAM in one statement ---- 4097CREATE TRIGGER trig BEFORE INSERT ON myisam1 FOR EACH ROW INSERT INTO myisam2 VALUES (1); 4098# enforce_gtid_consistency=2 gtid_mode=0 gtid_next=AUTOMATIC 4099SET GTID_NEXT = 'AUTOMATIC'; 4100[START] INSERT INTO myisam2 VALUES (1); 4101include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4102include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4103[END] INSERT INTO myisam2 VALUES (1); 4104include/assert.inc [No warning or error should be generated.] 4105include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4106include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4107ROLLBACK; 4108SET GTID_NEXT = 'AUTOMATIC'; 4109include/assert.inc [Both counters should be 0] 4110DROP TRIGGER trig; 4111---- MyISAM followed by InnoDB, in one 'trx' ---- 4112# enforce_gtid_consistency=2 gtid_mode=0 gtid_next=AUTOMATIC 4113SET GTID_NEXT = 'AUTOMATIC'; 4114BEGIN; INSERT INTO myisam1 VALUES (1); 4115[START] INSERT INTO innodb VALUES (1); 4116include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4117include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4118[END] INSERT INTO innodb VALUES (1); 4119include/assert.inc [No warning or error should be generated.] 4120include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4121include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4122ROLLBACK; 4123Warnings: 4124Warning 1196 Some non-transactional changed tables couldn't be rolled back 4125SET GTID_NEXT = 'AUTOMATIC'; 4126include/assert.inc [Both counters should be 0] 4127SET SESSION BINLOG_FORMAT = MIXED; 4128---- InnoDB followed by temp MyISAM in one trx, binlog_format=mix ---- 4129CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 4130# enforce_gtid_consistency=2 gtid_mode=0 gtid_next=AUTOMATIC 4131SET GTID_NEXT = 'AUTOMATIC'; 4132BEGIN; INSERT INTO innodb VALUES (1); 4133[START] INSERT INTO tmp_myisam1 VALUES (1); 4134include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4135include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4136[END] INSERT INTO tmp_myisam1 VALUES (1); 4137include/assert.inc [No warning or error should be generated.] 4138include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4139include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4140ROLLBACK; 4141Warnings: 4142Warning 1196 Some non-transactional changed tables couldn't be rolled back 4143SET GTID_NEXT = 'AUTOMATIC'; 4144include/assert.inc [Both counters should be 0] 4145DROP TEMPORARY TABLE tmp_myisam1; 4146---- InnoDB and temp MyISAM in one autocommit statement, binlog_format=mix ---- 4147CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 4148CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 4149CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO tmp_myisam1 VALUES (1); INSERT INTO tmp_myisam2 VALUES (1); END; 4150# enforce_gtid_consistency=2 gtid_mode=0 gtid_next=AUTOMATIC 4151SET GTID_NEXT = 'AUTOMATIC'; 4152[START] INSERT INTO innodb VALUES (1); 4153include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4154include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4155[END] INSERT INTO innodb VALUES (1); 4156include/assert.inc [No warning or error should be generated.] 4157include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4158include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4159ROLLBACK; 4160SET GTID_NEXT = 'AUTOMATIC'; 4161include/assert.inc [Both counters should be 0] 4162DROP TRIGGER trig; 4163DROP TEMPORARY TABLE tmp_myisam1, tmp_myisam2; 4164SET BINLOG_FORMAT = ROW; 4165CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 4166CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 4167---- InnoDB followed by temp MyISAM in one trx, binlog_format=row ---- 4168# enforce_gtid_consistency=2 gtid_mode=0 gtid_next=AUTOMATIC 4169SET GTID_NEXT = 'AUTOMATIC'; 4170BEGIN; INSERT INTO innodb VALUES (1); 4171[START] INSERT INTO tmp_myisam1 VALUES (1); 4172include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4173include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4174[END] INSERT INTO tmp_myisam1 VALUES (1); 4175include/assert.inc [No warning or error should be generated.] 4176include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4177include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4178ROLLBACK; 4179Warnings: 4180Warning 1196 Some non-transactional changed tables couldn't be rolled back 4181SET GTID_NEXT = 'AUTOMATIC'; 4182include/assert.inc [Both counters should be 0] 4183---- InnoDB and temp MyISAM in one statement, binlog_format=row ---- 4184CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO tmp_myisam1 VALUES (1); INSERT INTO tmp_myisam2 VALUES (1); END; 4185# enforce_gtid_consistency=2 gtid_mode=0 gtid_next=AUTOMATIC 4186SET GTID_NEXT = 'AUTOMATIC'; 4187[START] INSERT INTO innodb VALUES (1); 4188include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4189include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4190[END] INSERT INTO innodb VALUES (1); 4191include/assert.inc [No warning or error should be generated.] 4192include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4193include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4194ROLLBACK; 4195SET GTID_NEXT = 'AUTOMATIC'; 4196include/assert.inc [Both counters should be 0] 4197DROP TRIGGER trig; 4198DROP TEMPORARY TABLE tmp_myisam1, tmp_myisam2; 4199SET BINLOG_FORMAT = #; 4200CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 4201CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 4202SET SQL_LOG_BIN = 0; 4203---- InnoDB and MyISAM in one statement, SQL_LOG_BIN=0 ---- 4204CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO myisam1 VALUES (1); INSERT INTO myisam2 VALUES (1); END; 4205# enforce_gtid_consistency=2 gtid_mode=0 gtid_next=AUTOMATIC 4206SET GTID_NEXT = 'AUTOMATIC'; 4207[START] INSERT INTO innodb VALUES (1); 4208include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4209include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4210[END] INSERT INTO innodb VALUES (1); 4211include/assert.inc [No warning or error should be generated.] 4212include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4213include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4214ROLLBACK; 4215SET GTID_NEXT = 'AUTOMATIC'; 4216include/assert.inc [Both counters should be 0] 4217DROP TRIGGER trig; 4218---- InnoDB followed by MyISAM, in one trx, SQL_LOG_BIN=0 ---- 4219# enforce_gtid_consistency=2 gtid_mode=0 gtid_next=AUTOMATIC 4220SET GTID_NEXT = 'AUTOMATIC'; 4221BEGIN; INSERT INTO innodb VALUES (1); 4222[START] INSERT INTO myisam1 VALUES (1); 4223include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4224include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4225[END] INSERT INTO myisam1 VALUES (1); 4226include/assert.inc [No warning or error should be generated.] 4227include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4228include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4229ROLLBACK; 4230Warnings: 4231Warning 1196 Some non-transactional changed tables couldn't be rolled back 4232SET GTID_NEXT = 'AUTOMATIC'; 4233include/assert.inc [Both counters should be 0] 4234---- InnoDB and MyISAM in one statement inside trx, SQL_LOG_BIN=0 ---- 4235CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO myisam1 VALUES (1); INSERT INTO myisam2 VALUES (1); END; 4236# enforce_gtid_consistency=2 gtid_mode=0 gtid_next=AUTOMATIC 4237SET GTID_NEXT = 'AUTOMATIC'; 4238BEGIN; 4239[START] INSERT INTO innodb VALUES (1); 4240include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4241include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4242[END] INSERT INTO innodb VALUES (1); 4243include/assert.inc [No warning or error should be generated.] 4244include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4245include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4246ROLLBACK; 4247Warnings: 4248Warning 1196 Some non-transactional changed tables couldn't be rolled back 4249SET GTID_NEXT = 'AUTOMATIC'; 4250include/assert.inc [Both counters should be 0] 4251DROP TRIGGER trig; 4252SET SQL_LOG_BIN = 1; 4253DROP TABLE myisam1, myisam2, tmp_myisam1, tmp_myisam2, innodb; 4254######## ENFORCE_GTID_CONSISTENCY=WARN GTID_MODE=OFF GTID_NEXT=ANONYMOUS ######## 4255CREATE TABLE myisam1 (a INT) ENGINE = MyISAM; 4256CREATE TABLE myisam2 (a INT) ENGINE = MyISAM; 4257CREATE TABLE innodb (a INT) ENGINE = InnoDB; 4258---- MyISAM followed by MyISAM, in one 'trx' ---- 4259# enforce_gtid_consistency=2 gtid_mode=0 gtid_next=ANONYMOUS 4260SET GTID_NEXT = 'ANONYMOUS'; 4261BEGIN; INSERT INTO myisam1 VALUES (1); 4262[START] INSERT INTO myisam2 VALUES (1); 4263include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4264include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4265[END] INSERT INTO myisam2 VALUES (1); 4266include/assert.inc [No warning or error should be generated.] 4267include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4268include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4269ROLLBACK; 4270Warnings: 4271Warning 1196 Some non-transactional changed tables couldn't be rolled back 4272SET GTID_NEXT = 'AUTOMATIC'; 4273include/assert.inc [Both counters should be 0] 4274---- MyISAM and MyISAM in one statement ---- 4275CREATE TRIGGER trig BEFORE INSERT ON myisam1 FOR EACH ROW INSERT INTO myisam2 VALUES (1); 4276# enforce_gtid_consistency=2 gtid_mode=0 gtid_next=ANONYMOUS 4277SET GTID_NEXT = 'ANONYMOUS'; 4278[START] INSERT INTO myisam2 VALUES (1); 4279include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4280include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4281[END] INSERT INTO myisam2 VALUES (1); 4282include/assert.inc [No warning or error should be generated.] 4283include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4284include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4285ROLLBACK; 4286SET GTID_NEXT = 'AUTOMATIC'; 4287include/assert.inc [Both counters should be 0] 4288DROP TRIGGER trig; 4289---- MyISAM followed by InnoDB, in one 'trx' ---- 4290# enforce_gtid_consistency=2 gtid_mode=0 gtid_next=ANONYMOUS 4291SET GTID_NEXT = 'ANONYMOUS'; 4292BEGIN; INSERT INTO myisam1 VALUES (1); 4293[START] INSERT INTO innodb VALUES (1); 4294include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4295include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4296[END] INSERT INTO innodb VALUES (1); 4297include/assert.inc [No warning or error should be generated.] 4298include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4299include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4300ROLLBACK; 4301Warnings: 4302Warning 1196 Some non-transactional changed tables couldn't be rolled back 4303SET GTID_NEXT = 'AUTOMATIC'; 4304include/assert.inc [Both counters should be 0] 4305SET SESSION BINLOG_FORMAT = MIXED; 4306---- InnoDB followed by temp MyISAM in one trx, binlog_format=mix ---- 4307CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 4308# enforce_gtid_consistency=2 gtid_mode=0 gtid_next=ANONYMOUS 4309SET GTID_NEXT = 'ANONYMOUS'; 4310BEGIN; INSERT INTO innodb VALUES (1); 4311[START] INSERT INTO tmp_myisam1 VALUES (1); 4312include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4313include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4314[END] INSERT INTO tmp_myisam1 VALUES (1); 4315include/assert.inc [No warning or error should be generated.] 4316include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4317include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4318ROLLBACK; 4319Warnings: 4320Warning 1196 Some non-transactional changed tables couldn't be rolled back 4321SET GTID_NEXT = 'AUTOMATIC'; 4322include/assert.inc [Both counters should be 0] 4323DROP TEMPORARY TABLE tmp_myisam1; 4324---- InnoDB and temp MyISAM in one autocommit statement, binlog_format=mix ---- 4325CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 4326CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 4327CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO tmp_myisam1 VALUES (1); INSERT INTO tmp_myisam2 VALUES (1); END; 4328# enforce_gtid_consistency=2 gtid_mode=0 gtid_next=ANONYMOUS 4329SET GTID_NEXT = 'ANONYMOUS'; 4330[START] INSERT INTO innodb VALUES (1); 4331include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4332include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4333[END] INSERT INTO innodb VALUES (1); 4334include/assert.inc [No warning or error should be generated.] 4335include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4336include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4337ROLLBACK; 4338SET GTID_NEXT = 'AUTOMATIC'; 4339include/assert.inc [Both counters should be 0] 4340DROP TRIGGER trig; 4341DROP TEMPORARY TABLE tmp_myisam1, tmp_myisam2; 4342SET BINLOG_FORMAT = ROW; 4343CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 4344CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 4345---- InnoDB followed by temp MyISAM in one trx, binlog_format=row ---- 4346# enforce_gtid_consistency=2 gtid_mode=0 gtid_next=ANONYMOUS 4347SET GTID_NEXT = 'ANONYMOUS'; 4348BEGIN; INSERT INTO innodb VALUES (1); 4349[START] INSERT INTO tmp_myisam1 VALUES (1); 4350include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4351include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4352[END] INSERT INTO tmp_myisam1 VALUES (1); 4353include/assert.inc [No warning or error should be generated.] 4354include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4355include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4356ROLLBACK; 4357Warnings: 4358Warning 1196 Some non-transactional changed tables couldn't be rolled back 4359SET GTID_NEXT = 'AUTOMATIC'; 4360include/assert.inc [Both counters should be 0] 4361---- InnoDB and temp MyISAM in one statement, binlog_format=row ---- 4362CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO tmp_myisam1 VALUES (1); INSERT INTO tmp_myisam2 VALUES (1); END; 4363# enforce_gtid_consistency=2 gtid_mode=0 gtid_next=ANONYMOUS 4364SET GTID_NEXT = 'ANONYMOUS'; 4365[START] INSERT INTO innodb VALUES (1); 4366include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4367include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4368[END] INSERT INTO innodb VALUES (1); 4369include/assert.inc [No warning or error should be generated.] 4370include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4371include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4372ROLLBACK; 4373SET GTID_NEXT = 'AUTOMATIC'; 4374include/assert.inc [Both counters should be 0] 4375DROP TRIGGER trig; 4376DROP TEMPORARY TABLE tmp_myisam1, tmp_myisam2; 4377SET BINLOG_FORMAT = #; 4378CREATE TEMPORARY TABLE tmp_myisam1 (a INT) ENGINE = MyISAM; 4379CREATE TEMPORARY TABLE tmp_myisam2 (a INT) ENGINE = MyISAM; 4380SET SQL_LOG_BIN = 0; 4381---- InnoDB and MyISAM in one statement, SQL_LOG_BIN=0 ---- 4382CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO myisam1 VALUES (1); INSERT INTO myisam2 VALUES (1); END; 4383# enforce_gtid_consistency=2 gtid_mode=0 gtid_next=ANONYMOUS 4384SET GTID_NEXT = 'ANONYMOUS'; 4385[START] INSERT INTO innodb VALUES (1); 4386include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4387include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4388[END] INSERT INTO innodb VALUES (1); 4389include/assert.inc [No warning or error should be generated.] 4390include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4391include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4392ROLLBACK; 4393SET GTID_NEXT = 'AUTOMATIC'; 4394include/assert.inc [Both counters should be 0] 4395DROP TRIGGER trig; 4396---- InnoDB followed by MyISAM, in one trx, SQL_LOG_BIN=0 ---- 4397# enforce_gtid_consistency=2 gtid_mode=0 gtid_next=ANONYMOUS 4398SET GTID_NEXT = 'ANONYMOUS'; 4399BEGIN; INSERT INTO innodb VALUES (1); 4400[START] INSERT INTO myisam1 VALUES (1); 4401include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4402include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4403[END] INSERT INTO myisam1 VALUES (1); 4404include/assert.inc [No warning or error should be generated.] 4405include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4406include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4407ROLLBACK; 4408Warnings: 4409Warning 1196 Some non-transactional changed tables couldn't be rolled back 4410SET GTID_NEXT = 'AUTOMATIC'; 4411include/assert.inc [Both counters should be 0] 4412---- InnoDB and MyISAM in one statement inside trx, SQL_LOG_BIN=0 ---- 4413CREATE TRIGGER trig BEFORE INSERT ON innodb FOR EACH ROW BEGIN INSERT INTO myisam1 VALUES (1); INSERT INTO myisam2 VALUES (1); END; 4414# enforce_gtid_consistency=2 gtid_mode=0 gtid_next=ANONYMOUS 4415SET GTID_NEXT = 'ANONYMOUS'; 4416BEGIN; 4417[START] INSERT INTO innodb VALUES (1); 4418include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4419include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4420[END] INSERT INTO innodb VALUES (1); 4421include/assert.inc [No warning or error should be generated.] 4422include/assert.inc [ONGOING_AUTOMATIC_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4423include/assert.inc [ONGOING_ANONYMOUS_GTID_VIOLATING_TRANSACTION_COUNT should be 0] 4424ROLLBACK; 4425Warnings: 4426Warning 1196 Some non-transactional changed tables couldn't be rolled back 4427SET GTID_NEXT = 'AUTOMATIC'; 4428include/assert.inc [Both counters should be 0] 4429DROP TRIGGER trig; 4430SET SQL_LOG_BIN = 1; 4431DROP TABLE myisam1, myisam2, tmp_myisam1, tmp_myisam2, innodb; 4432SET GLOBAL ENFORCE_GTID_CONSISTENCY = OFF; 4433SET GLOBAL SQL_NOTES = @old_sql_notes; 4434include/rpl_end.inc 4435include/end_replace_gtid_combination.inc [gtid_mode=off/on -> binlog_direct_non_transactional_updates=0/1] 4436