mirror of
https://github.com/MariaDB/server.git
synced 2025-01-31 19:11:46 +01:00
d9f975d08b
Adjust full test suite to work with GTID. Huge patch, mainly due to having to update .result file for all SHOW BINLOG EVENTS and mysqlbinlog outputs, where the new GTID events pop up. Everything was painstakingly checked to be still correct and valid .result file updates.
69 lines
3.1 KiB
Text
69 lines
3.1 KiB
Text
include/master-slave.inc
|
|
[connection master]
|
|
CREATE TABLE t1(c1 INT);
|
|
show binlog events from <binlog_start>;
|
|
Log_name Pos Event_type Server_id End_log_pos Info
|
|
master-bin.000001 # Gtid # # GTID #-#-#
|
|
master-bin.000001 # Query # # use `test`; CREATE TABLE t1(c1 INT)
|
|
|
|
# Case 1:
|
|
# ------------------------------------------------------------------
|
|
# In a statement, some CCs are applied while others are not. The CCs
|
|
# which are not applied on master will be binlogged as common comments.
|
|
/*!999999 --- */INSERT /*!INTO*/ /*!10000 t1 */ VALUES(10) /*!999999 ,(11)*/;
|
|
show binlog events from <binlog_start>;
|
|
Log_name Pos Event_type Server_id End_log_pos Info
|
|
master-bin.000001 # Gtid # # BEGIN GTID #-#-#
|
|
master-bin.000001 # Query # # use `test`; /* 999999 --- */INSERT /*!INTO*/ /*!10000 t1 */ VALUES(10) /* 999999 ,(11)*/
|
|
master-bin.000001 # Query # # COMMIT
|
|
include/diff_tables.inc [master:t1,slave:t1]
|
|
|
|
# Case 2:
|
|
# -----------------------------------------------------------------
|
|
# Verify whether it can be binlogged correctly when executing prepared
|
|
# statement.
|
|
PREPARE stmt FROM 'INSERT INTO /*!999999 blabla*/ t1 VALUES(60) /*!999999 ,(61)*/';
|
|
EXECUTE stmt;
|
|
DROP TABLE t1;
|
|
CREATE TABLE t1(c1 INT);
|
|
EXECUTE stmt;
|
|
include/diff_tables.inc [master:t1,slave:t1]
|
|
|
|
SET @value=62;
|
|
PREPARE stmt FROM 'INSERT INTO /*!999999 blabla */ t1 VALUES(?) /*!999999 ,(63)*/';
|
|
EXECUTE stmt USING @value;
|
|
DROP TABLE t1;
|
|
CREATE TABLE t1(c1 INT);
|
|
EXECUTE stmt USING @value;
|
|
show binlog events from <binlog_start>;
|
|
Log_name Pos Event_type Server_id End_log_pos Info
|
|
master-bin.000001 # Gtid # # BEGIN GTID #-#-#
|
|
master-bin.000001 # Query # # use `test`; INSERT INTO /* 999999 blabla*/ t1 VALUES(60) /* 999999 ,(61)*/
|
|
master-bin.000001 # Query # # COMMIT
|
|
master-bin.000001 # Gtid # # GTID #-#-#
|
|
master-bin.000001 # Query # # use `test`; DROP TABLE `t1` /* generated by server */
|
|
master-bin.000001 # Gtid # # GTID #-#-#
|
|
master-bin.000001 # Query # # use `test`; CREATE TABLE t1(c1 INT)
|
|
master-bin.000001 # Gtid # # BEGIN GTID #-#-#
|
|
master-bin.000001 # Query # # use `test`; INSERT INTO /* 999999 blabla*/ t1 VALUES(60) /* 999999 ,(61)*/
|
|
master-bin.000001 # Query # # COMMIT
|
|
master-bin.000001 # Gtid # # BEGIN GTID #-#-#
|
|
master-bin.000001 # Query # # use `test`; INSERT INTO /* 999999 blabla */ t1 VALUES(62) /* 999999 ,(63)*/
|
|
master-bin.000001 # Query # # COMMIT
|
|
master-bin.000001 # Gtid # # GTID #-#-#
|
|
master-bin.000001 # Query # # use `test`; DROP TABLE `t1` /* generated by server */
|
|
master-bin.000001 # Gtid # # GTID #-#-#
|
|
master-bin.000001 # Query # # use `test`; CREATE TABLE t1(c1 INT)
|
|
master-bin.000001 # Gtid # # BEGIN GTID #-#-#
|
|
master-bin.000001 # Query # # use `test`; INSERT INTO /* 999999 blabla */ t1 VALUES(62) /* 999999 ,(63)*/
|
|
master-bin.000001 # Query # # COMMIT
|
|
include/diff_tables.inc [master:t1,slave:t1]
|
|
|
|
# Case 3:
|
|
# -----------------------------------------------------------------
|
|
# Verify it can restore the '!', if the it is an uncomplete conditional
|
|
# comments
|
|
SELECT c1 FROM /*!999999 t1 WHEREN;
|
|
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '/*!999999 t1 WHEREN' at line 1
|
|
DROP TABLE t1;
|
|
include/rpl_end.inc
|