mirror of
https://github.com/MariaDB/server.git
synced 2025-11-25 17:25:02 +03:00
Problem: ======== During point in time recovery of binary log syntax error is reported for BEGIN statement and recovery fails. Analysis: ========= In MariaDB 10.3 and later, setting the sql_mode system variable to Oracle allows the server to understand a subset of Oracle's PL/SQL language. When sql_mode=ORACLE is set, it switches the parser from the MariaDB parser to Oracle compatible parser. With this change 'BEGIN' is not considered as 'START TRANSACTION'. Hence the syntax error is reported. Fix: === At preset 'BEGIN' query is generated from 'Gtid_log_event::print'. The current session specific 'sql_mode' information is not present as part of 'Gtid_log_event'. If it was available then, mysqlbinlog tool can make use of 'sql_mode == ORACLE' and can output "START TRANSACTION" in this particular mode and for other sql_modes it will write "BEGIN" as part of output. Since it is not available 'mysqlbinlog' tool will output all 'BEGIN' statements as 'START TRANSACTION' irrespective of 'sql_mode'.
551 lines
18 KiB
Plaintext
551 lines
18 KiB
Plaintext
#
|
|
# Preparatory cleanup.
|
|
#
|
|
DROP TABLE IF EXISTS t1, t2;
|
|
#
|
|
# We need a fixed timestamp to avoid varying results.
|
|
#
|
|
SET timestamp=1000000000;
|
|
#
|
|
# Delete all existing binary logs.
|
|
#
|
|
RESET MASTER;
|
|
#
|
|
# Create test tables.
|
|
#
|
|
CREATE TABLE t1 (
|
|
c1 INT,
|
|
c2 VARCHAR(20)
|
|
) ENGINE=InnoDB DEFAULT CHARSET latin1;
|
|
CREATE TABLE t2 (
|
|
c1 INT,
|
|
c2 VARCHAR(20)
|
|
) ENGINE=MyISAM DEFAULT CHARSET latin1;
|
|
#
|
|
# Start transaction #1, transactional table only, commit.
|
|
#
|
|
START TRANSACTION;
|
|
#
|
|
# Do some statements.
|
|
#
|
|
INSERT INTO t1 VALUES (1,'varchar-1'), (2,'varchar-2'), (3,'varchar-3');
|
|
UPDATE t1 SET c1 = c1 + 10;
|
|
DELETE FROM t1 WHERE c1 = 12;
|
|
#
|
|
# Commit transaction.
|
|
#
|
|
COMMIT;
|
|
SELECT * FROM t1;
|
|
c1 c2
|
|
11 varchar-1
|
|
13 varchar-3
|
|
TRUNCATE TABLE t1;
|
|
#
|
|
# Start transaction #2, transactional table only, rollback.
|
|
#
|
|
START TRANSACTION;
|
|
#
|
|
# Do some statements.
|
|
#
|
|
INSERT INTO t1 VALUES (1,'varchar-1'), (2,'varchar-2'), (3,'varchar-3');
|
|
UPDATE t1 SET c1 = c1 + 10;
|
|
DELETE FROM t1 WHERE c1 = 12;
|
|
#
|
|
# Rollback transaction.
|
|
#
|
|
ROLLBACK;
|
|
SELECT * FROM t1;
|
|
c1 c2
|
|
TRUNCATE TABLE t1;
|
|
#
|
|
# Start transaction #3, both tables, commit.
|
|
#
|
|
START TRANSACTION;
|
|
#
|
|
# Do some statements on the transactional table.
|
|
#
|
|
INSERT INTO t1 VALUES (1,'varchar-1'), (2,'varchar-2'), (3,'varchar-3');
|
|
UPDATE t1 SET c1 = c1 + 10;
|
|
DELETE FROM t1 WHERE c1 = 12;
|
|
#
|
|
# Do some statements on the non-transactional table.
|
|
#
|
|
INSERT INTO t2 VALUES (1,'varchar-1'), (2,'varchar-2'), (3,'varchar-3');
|
|
UPDATE t2 SET c1 = c1 + 10;
|
|
DELETE FROM t2 WHERE c1 = 12;
|
|
#
|
|
# Commit transaction.
|
|
#
|
|
COMMIT;
|
|
SELECT * FROM t1;
|
|
c1 c2
|
|
11 varchar-1
|
|
13 varchar-3
|
|
SELECT * FROM t2;
|
|
c1 c2
|
|
11 varchar-1
|
|
13 varchar-3
|
|
TRUNCATE TABLE t1;
|
|
TRUNCATE TABLE t2;
|
|
#
|
|
# Start transaction #4, both tables, rollback.
|
|
#
|
|
START TRANSACTION;
|
|
#
|
|
# Do some statements on the transactional table.
|
|
#
|
|
INSERT INTO t1 VALUES (1,'varchar-1'), (2,'varchar-2'), (3,'varchar-3');
|
|
UPDATE t1 SET c1 = c1 + 10;
|
|
DELETE FROM t1 WHERE c1 = 12;
|
|
#
|
|
# Do some statements on the non-transactional table.
|
|
#
|
|
INSERT INTO t2 VALUES (1,'varchar-1'), (2,'varchar-2'), (3,'varchar-3');
|
|
UPDATE t2 SET c1 = c1 + 10;
|
|
DELETE FROM t2 WHERE c1 = 12;
|
|
#
|
|
# Rollback transaction.
|
|
#
|
|
ROLLBACK;
|
|
Warnings:
|
|
Warning 1196 Some non-transactional changed tables couldn't be rolled back
|
|
SELECT * FROM t1;
|
|
c1 c2
|
|
SELECT * FROM t2;
|
|
c1 c2
|
|
11 varchar-1
|
|
13 varchar-3
|
|
TRUNCATE TABLE t1;
|
|
TRUNCATE TABLE t2;
|
|
#
|
|
# Flush all log buffers to the log file.
|
|
#
|
|
FLUSH LOGS;
|
|
#
|
|
# Call mysqlbinlog to display the log file contents.
|
|
#
|
|
/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
|
|
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
|
|
/*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
|
|
DELIMITER /*!*/;
|
|
# at #
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX Start: binlog v 4, server v #.##.## created 010909 4:46:40 at startup
|
|
ROLLBACK/*!*/;
|
|
# at #
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX Gtid list []
|
|
# at #
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX Binlog checkpoint master-bin.000001
|
|
# at #
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX GTID 0-1-1 ddl
|
|
/*!100101 SET @@session.skip_parallel_replication=0*//*!*/;
|
|
/*!100001 SET @@session.gtid_domain_id=0*//*!*/;
|
|
/*!100001 SET @@session.server_id=1*//*!*/;
|
|
/*!100001 SET @@session.gtid_seq_no=1*//*!*/;
|
|
# at #
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX Query thread_id=# exec_time=# error_code=0
|
|
use `test`/*!*/;
|
|
SET TIMESTAMP=1000000000/*!*/;
|
|
SET @@session.pseudo_thread_id=#/*!*/;
|
|
SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=0, @@session.unique_checks=1, @@session.autocommit=1, @@session.check_constraint_checks=1/*!*/;
|
|
SET @@session.sql_mode=1411383296/*!*/;
|
|
SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
|
|
/*!\C latin1 *//*!*/;
|
|
SET @@session.character_set_client=X,@@session.collation_connection=X,@@session.collation_server=X/*!*/;
|
|
SET @@session.lc_time_names=0/*!*/;
|
|
SET @@session.collation_database=DEFAULT/*!*/;
|
|
CREATE TABLE t1 (
|
|
c1 INT,
|
|
c2 VARCHAR(20)
|
|
) ENGINE=InnoDB DEFAULT CHARSET latin1
|
|
/*!*/;
|
|
# at #
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX GTID 0-1-2 ddl
|
|
/*!100001 SET @@session.gtid_seq_no=2*//*!*/;
|
|
# at #
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX Query thread_id=# exec_time=# error_code=0
|
|
SET TIMESTAMP=1000000000/*!*/;
|
|
CREATE TABLE t2 (
|
|
c1 INT,
|
|
c2 VARCHAR(20)
|
|
) ENGINE=MyISAM DEFAULT CHARSET latin1
|
|
/*!*/;
|
|
# at #
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX GTID 0-1-3 trans
|
|
/*!100001 SET @@session.gtid_seq_no=3*//*!*/;
|
|
START TRANSACTION
|
|
/*!*/;
|
|
# at #
|
|
# at #
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX Annotate_rows:
|
|
#Q> INSERT INTO t1 VALUES (1,'varchar-1'), (2,'varchar-2'), (3,'varchar-3')
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX Table_map: `test`.`t1` mapped to number #
|
|
# at #
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX Write_rows: table id # flags: STMT_END_F
|
|
### INSERT INTO `test`.`t1`
|
|
### SET
|
|
### @1=1 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @2='varchar-1' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
|
|
### INSERT INTO `test`.`t1`
|
|
### SET
|
|
### @1=2 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @2='varchar-2' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
|
|
### INSERT INTO `test`.`t1`
|
|
### SET
|
|
### @1=3 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @2='varchar-3' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
|
|
# Number of rows: 3
|
|
# at #
|
|
# at #
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX Annotate_rows:
|
|
#Q> UPDATE t1 SET c1 = c1 + 10
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX Table_map: `test`.`t1` mapped to number #
|
|
# at #
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX Update_rows: table id # flags: STMT_END_F
|
|
### UPDATE `test`.`t1`
|
|
### WHERE
|
|
### @1=1 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @2='varchar-1' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
|
|
### SET
|
|
### @1=11 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @2='varchar-1' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
|
|
### UPDATE `test`.`t1`
|
|
### WHERE
|
|
### @1=2 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @2='varchar-2' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
|
|
### SET
|
|
### @1=12 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @2='varchar-2' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
|
|
### UPDATE `test`.`t1`
|
|
### WHERE
|
|
### @1=3 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @2='varchar-3' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
|
|
### SET
|
|
### @1=13 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @2='varchar-3' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
|
|
# Number of rows: 3
|
|
# at #
|
|
# at #
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX Annotate_rows:
|
|
#Q> DELETE FROM t1 WHERE c1 = 12
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX Table_map: `test`.`t1` mapped to number #
|
|
# at #
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX Delete_rows: table id # flags: STMT_END_F
|
|
### DELETE FROM `test`.`t1`
|
|
### WHERE
|
|
### @1=12 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @2='varchar-2' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
|
|
# Number of rows: 1
|
|
# at #
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX Xid = #
|
|
COMMIT/*!*/;
|
|
# at #
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX GTID 0-1-4 ddl
|
|
/*!100001 SET @@session.gtid_seq_no=4*//*!*/;
|
|
# at #
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX Query thread_id=# exec_time=# error_code=0
|
|
SET TIMESTAMP=1000000000/*!*/;
|
|
TRUNCATE TABLE t1
|
|
/*!*/;
|
|
# at #
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX GTID 0-1-5 ddl
|
|
/*!100001 SET @@session.gtid_seq_no=5*//*!*/;
|
|
# at #
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX Query thread_id=# exec_time=# error_code=0
|
|
SET TIMESTAMP=1000000000/*!*/;
|
|
TRUNCATE TABLE t1
|
|
/*!*/;
|
|
# at #
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX GTID 0-1-6
|
|
/*!100001 SET @@session.gtid_seq_no=6*//*!*/;
|
|
START TRANSACTION
|
|
/*!*/;
|
|
# at #
|
|
# at #
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX Annotate_rows:
|
|
#Q> INSERT INTO t2 VALUES (1,'varchar-1'), (2,'varchar-2'), (3,'varchar-3')
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX Table_map: `test`.`t2` mapped to number #
|
|
# at #
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX Write_rows: table id # flags: STMT_END_F
|
|
### INSERT INTO `test`.`t2`
|
|
### SET
|
|
### @1=1 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @2='varchar-1' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
|
|
### INSERT INTO `test`.`t2`
|
|
### SET
|
|
### @1=2 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @2='varchar-2' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
|
|
### INSERT INTO `test`.`t2`
|
|
### SET
|
|
### @1=3 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @2='varchar-3' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
|
|
# Number of rows: 3
|
|
# at #
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX Query thread_id=# exec_time=# error_code=0
|
|
SET TIMESTAMP=1000000000/*!*/;
|
|
COMMIT
|
|
/*!*/;
|
|
# at #
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX GTID 0-1-7
|
|
/*!100001 SET @@session.gtid_seq_no=7*//*!*/;
|
|
START TRANSACTION
|
|
/*!*/;
|
|
# at #
|
|
# at #
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX Annotate_rows:
|
|
#Q> UPDATE t2 SET c1 = c1 + 10
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX Table_map: `test`.`t2` mapped to number #
|
|
# at #
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX Update_rows: table id # flags: STMT_END_F
|
|
### UPDATE `test`.`t2`
|
|
### WHERE
|
|
### @1=1 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @2='varchar-1' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
|
|
### SET
|
|
### @1=11 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @2='varchar-1' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
|
|
### UPDATE `test`.`t2`
|
|
### WHERE
|
|
### @1=2 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @2='varchar-2' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
|
|
### SET
|
|
### @1=12 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @2='varchar-2' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
|
|
### UPDATE `test`.`t2`
|
|
### WHERE
|
|
### @1=3 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @2='varchar-3' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
|
|
### SET
|
|
### @1=13 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @2='varchar-3' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
|
|
# Number of rows: 3
|
|
# at #
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX Query thread_id=# exec_time=# error_code=0
|
|
SET TIMESTAMP=1000000000/*!*/;
|
|
COMMIT
|
|
/*!*/;
|
|
# at #
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX GTID 0-1-8
|
|
/*!100001 SET @@session.gtid_seq_no=8*//*!*/;
|
|
START TRANSACTION
|
|
/*!*/;
|
|
# at #
|
|
# at #
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX Annotate_rows:
|
|
#Q> DELETE FROM t2 WHERE c1 = 12
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX Table_map: `test`.`t2` mapped to number #
|
|
# at #
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX Delete_rows: table id # flags: STMT_END_F
|
|
### DELETE FROM `test`.`t2`
|
|
### WHERE
|
|
### @1=12 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @2='varchar-2' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
|
|
# Number of rows: 1
|
|
# at #
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX Query thread_id=# exec_time=# error_code=0
|
|
SET TIMESTAMP=1000000000/*!*/;
|
|
COMMIT
|
|
/*!*/;
|
|
# at #
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX GTID 0-1-9 trans
|
|
/*!100001 SET @@session.gtid_seq_no=9*//*!*/;
|
|
START TRANSACTION
|
|
/*!*/;
|
|
# at #
|
|
# at #
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX Annotate_rows:
|
|
#Q> INSERT INTO t1 VALUES (1,'varchar-1'), (2,'varchar-2'), (3,'varchar-3')
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX Table_map: `test`.`t1` mapped to number #
|
|
# at #
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX Write_rows: table id # flags: STMT_END_F
|
|
### INSERT INTO `test`.`t1`
|
|
### SET
|
|
### @1=1 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @2='varchar-1' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
|
|
### INSERT INTO `test`.`t1`
|
|
### SET
|
|
### @1=2 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @2='varchar-2' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
|
|
### INSERT INTO `test`.`t1`
|
|
### SET
|
|
### @1=3 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @2='varchar-3' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
|
|
# Number of rows: 3
|
|
# at #
|
|
# at #
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX Annotate_rows:
|
|
#Q> UPDATE t1 SET c1 = c1 + 10
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX Table_map: `test`.`t1` mapped to number #
|
|
# at #
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX Update_rows: table id # flags: STMT_END_F
|
|
### UPDATE `test`.`t1`
|
|
### WHERE
|
|
### @1=1 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @2='varchar-1' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
|
|
### SET
|
|
### @1=11 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @2='varchar-1' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
|
|
### UPDATE `test`.`t1`
|
|
### WHERE
|
|
### @1=2 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @2='varchar-2' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
|
|
### SET
|
|
### @1=12 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @2='varchar-2' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
|
|
### UPDATE `test`.`t1`
|
|
### WHERE
|
|
### @1=3 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @2='varchar-3' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
|
|
### SET
|
|
### @1=13 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @2='varchar-3' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
|
|
# Number of rows: 3
|
|
# at #
|
|
# at #
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX Annotate_rows:
|
|
#Q> DELETE FROM t1 WHERE c1 = 12
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX Table_map: `test`.`t1` mapped to number #
|
|
# at #
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX Delete_rows: table id # flags: STMT_END_F
|
|
### DELETE FROM `test`.`t1`
|
|
### WHERE
|
|
### @1=12 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @2='varchar-2' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
|
|
# Number of rows: 1
|
|
# at #
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX Xid = #
|
|
COMMIT/*!*/;
|
|
# at #
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX GTID 0-1-10 ddl
|
|
/*!100001 SET @@session.gtid_seq_no=10*//*!*/;
|
|
# at #
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX Query thread_id=# exec_time=# error_code=0
|
|
SET TIMESTAMP=1000000000/*!*/;
|
|
TRUNCATE TABLE t1
|
|
/*!*/;
|
|
# at #
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX GTID 0-1-11 ddl
|
|
/*!100001 SET @@session.gtid_seq_no=11*//*!*/;
|
|
# at #
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX Query thread_id=# exec_time=# error_code=0
|
|
SET TIMESTAMP=1000000000/*!*/;
|
|
TRUNCATE TABLE t2
|
|
/*!*/;
|
|
# at #
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX GTID 0-1-12
|
|
/*!100001 SET @@session.gtid_seq_no=12*//*!*/;
|
|
START TRANSACTION
|
|
/*!*/;
|
|
# at #
|
|
# at #
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX Annotate_rows:
|
|
#Q> INSERT INTO t2 VALUES (1,'varchar-1'), (2,'varchar-2'), (3,'varchar-3')
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX Table_map: `test`.`t2` mapped to number #
|
|
# at #
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX Write_rows: table id # flags: STMT_END_F
|
|
### INSERT INTO `test`.`t2`
|
|
### SET
|
|
### @1=1 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @2='varchar-1' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
|
|
### INSERT INTO `test`.`t2`
|
|
### SET
|
|
### @1=2 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @2='varchar-2' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
|
|
### INSERT INTO `test`.`t2`
|
|
### SET
|
|
### @1=3 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @2='varchar-3' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
|
|
# Number of rows: 3
|
|
# at #
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX Query thread_id=# exec_time=# error_code=0
|
|
SET TIMESTAMP=1000000000/*!*/;
|
|
COMMIT
|
|
/*!*/;
|
|
# at #
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX GTID 0-1-13
|
|
/*!100001 SET @@session.gtid_seq_no=13*//*!*/;
|
|
START TRANSACTION
|
|
/*!*/;
|
|
# at #
|
|
# at #
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX Annotate_rows:
|
|
#Q> UPDATE t2 SET c1 = c1 + 10
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX Table_map: `test`.`t2` mapped to number #
|
|
# at #
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX Update_rows: table id # flags: STMT_END_F
|
|
### UPDATE `test`.`t2`
|
|
### WHERE
|
|
### @1=1 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @2='varchar-1' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
|
|
### SET
|
|
### @1=11 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @2='varchar-1' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
|
|
### UPDATE `test`.`t2`
|
|
### WHERE
|
|
### @1=2 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @2='varchar-2' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
|
|
### SET
|
|
### @1=12 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @2='varchar-2' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
|
|
### UPDATE `test`.`t2`
|
|
### WHERE
|
|
### @1=3 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @2='varchar-3' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
|
|
### SET
|
|
### @1=13 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @2='varchar-3' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
|
|
# Number of rows: 3
|
|
# at #
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX Query thread_id=# exec_time=# error_code=0
|
|
SET TIMESTAMP=1000000000/*!*/;
|
|
COMMIT
|
|
/*!*/;
|
|
# at #
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX GTID 0-1-14
|
|
/*!100001 SET @@session.gtid_seq_no=14*//*!*/;
|
|
START TRANSACTION
|
|
/*!*/;
|
|
# at #
|
|
# at #
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX Annotate_rows:
|
|
#Q> DELETE FROM t2 WHERE c1 = 12
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX Table_map: `test`.`t2` mapped to number #
|
|
# at #
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX Delete_rows: table id # flags: STMT_END_F
|
|
### DELETE FROM `test`.`t2`
|
|
### WHERE
|
|
### @1=12 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @2='varchar-2' /* VARSTRING(20) meta=20 nullable=1 is_null=0 */
|
|
# Number of rows: 1
|
|
# at #
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX Query thread_id=# exec_time=# error_code=0
|
|
SET TIMESTAMP=1000000000/*!*/;
|
|
COMMIT
|
|
/*!*/;
|
|
# at #
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX GTID 0-1-15 ddl
|
|
/*!100001 SET @@session.gtid_seq_no=15*//*!*/;
|
|
# at #
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX Query thread_id=# exec_time=# error_code=0
|
|
SET TIMESTAMP=1000000000/*!*/;
|
|
TRUNCATE TABLE t1
|
|
/*!*/;
|
|
# at #
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX GTID 0-1-16 ddl
|
|
/*!100001 SET @@session.gtid_seq_no=16*//*!*/;
|
|
# at #
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX Query thread_id=# exec_time=# error_code=0
|
|
SET TIMESTAMP=1000000000/*!*/;
|
|
TRUNCATE TABLE t2
|
|
/*!*/;
|
|
# at #
|
|
#010909 4:46:40 server id 1 end_log_pos # CRC32 XXX Rotate to master-bin.000002 pos: 4
|
|
DELIMITER ;
|
|
# End of log file
|
|
ROLLBACK /* added by mysqlbinlog */;
|
|
/*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
|
|
/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
|
|
#
|
|
# Cleanup.
|
|
#
|
|
DROP TABLE t1, t2;
|