1# ==== Purpose ====
2#
3# This test will check that mysql client program is able to apply
4# GTID skipped transactions without errors in the "use `<DATABASE>`"
5# statements.
6#
7# ==== Related Bugs and Worklogs ====
8#
9# BUG#26128931 USE `DATABASE` STATEMENT FAILS INSIDE GTID SKIPPED TRANSACTION
10#
11--source include/have_gtid.inc
12
13--echo #
14--echo # 1. Apply some data on server.
15--echo #
16CREATE TABLE t1 (c1 INT) ENGINE=InnoDB;
17INSERT INTO t1 VALUES (1);
18INSERT INTO t1 VALUES (2);
19INSERT INTO t1 VALUES (3);
20
21--echo #
22--echo # 2. Check that a SQL file with already logged transactions
23--echo #    is correctly skipped when is replayed.
24--echo #
25--let $MYSQLD_DATADIR= `SELECT @@DATADIR`
26--let $binlog_file= query_get_value(SHOW MASTER STATUS, File, 1)
27FLUSH LOGS;
28--exec $MYSQL_BINLOG $MYSQLD_DATADIR/$binlog_file > $MYSQLTEST_VARDIR/tmp/binlog_gtid_set_gtid_next.sql
29--exec $MYSQL < $MYSQLTEST_VARDIR/tmp/binlog_gtid_set_gtid_next.sql
30--remove_file $MYSQLTEST_VARDIR/tmp/binlog_gtid_set_gtid_next.sql
31
32--echo #
33--echo # 3. Clean up.
34--echo #
35DROP TABLE t1;
36