1#
2# WL#6972: Collect GTIDs to include in the protocol's OK packet
3#
4--source include/have_log_bin.inc
5--source include/have_binlog_format_mixed.inc
6--source include/have_gtid.inc
7
8# need debug build to be able to set a deterministic server uuid
9--source include/have_debug.inc
10
11# BUG#19667258: WL#6972 - SERVER CRASH ON SET SESSION SESSION_TRACK_GTIDS='OFF'
12
13RESET MASTER;
14
15--enable_session_track_info
16CREATE TABLE t1 (c1 INT) Engine=InnoDB;
17DROP TABLE t1;
18set session session_track_gtids='own_gtid';
19CREATE TABLE t1 (c1 INT) Engine=InnoDB;
20INSERT INTO t1 VALUES (1);
21set session session_track_gtids='all_gtids';
22SELECT * FROM t1;
23DROP TABLE t1;
24set session session_track_gtids='off';
25RESET MASTER;
26--disable_session_track_info
27
28########################################################
29# Sanity Test.
30#
31# Verifies that we collect the right GTIDs when
32# switching between values of SESSION_TRACK_GTIDS.
33########################################################
34
35--enable_session_track_info
36
37--let $saved_session_track_gtids= `SELECT @@SESSION.SESSION_TRACK_GTIDS`
38
39SELECT @@server_uuid;
40
41SET SESSION SESSION_TRACK_GTIDS=OFF;
42SET SESSION GTID_NEXT='11111111-AAAA-2222-BBBB-000000000000:1';
43CREATE TABLE t1 (c1 INT) Engine=InnoDB;
44SET SESSION GTID_NEXT=AUTOMATIC;
45
46SET SESSION SESSION_TRACK_GTIDS=OWN_GTID;
47SET SESSION GTID_NEXT='11111111-AAAA-2222-BBBB-111111111111:1';
48CREATE TABLE t2 (c1 INT) Engine=InnoDB;
49SET SESSION GTID_NEXT=AUTOMATIC;
50
51SET SESSION SESSION_TRACK_GTIDS=ALL_GTIDS;
52CREATE TABLE t3 (c1 INT) Engine=InnoDB;
53
54DROP TABLE t1, t2, t3;
55
56--disable_session_track_info
57
58--eval SET SESSION SESSION_TRACK_GTIDS= $saved_session_track_gtids
59RESET MASTER;
60
61######################################################
62# Tests for the OK packet data
63######################################################
64--source suite/binlog/include/binlog_gtid_mix_response_packet.inc
65