mirror of
https://github.com/MariaDB/server.git
synced 2025-01-30 18:41:56 +01:00
6aa9a552c2
There are a few different cases to consider Logging of CREATE TABLE and CREATE TABLE ... LIKE - If REPLACE is used and there was an existing table, DDL log the drop of the table. - If discovery of table is to be done - DDL LOG create table else - DDL log create table (with engine type) - create the table - If table was created - Log entry to binary log with xid - Mark DDL log completed Crash recovery: - If query was in binary log do nothing and exit - If discoverted table - Delete the .frm file -else - Drop created table and frm file - If table was dropped, write a DROP TABLE statement in binary log CREATE TABLE ... SELECT required a little more work as when one is using statement logging the query is written to the binary log before commit is done. This was fixed by adding a DROP TABLE to the binary log during crash recovery if the ddl log entry was not closed. In this case the binary log will contain: CREATE TABLE xxx ... SELECT .... DROP TABLE xxx; Other things: - Added debug_crash_here() functionality to Aria to be able to test crash in create table between the creation of the .MAI and the .MAD files.
485 lines
20 KiB
Text
485 lines
20 KiB
Text
SET GLOBAL log_bin_compress=on;
|
|
SET GLOBAL log_bin_compress_min_len=10;
|
|
CREATE TABLE t1 (pk INT PRIMARY KEY, f1 INT, f2 INT, f3 TINYINT, f4 MEDIUMINT, f5 BIGINT, f6 INT, f7 INT, f8 char(1));
|
|
CREATE TABLE t2 (pk INT PRIMARY KEY, f1 INT, f2 INT, f3 INT, f4 INT, f5 MEDIUMINT, f6 INT, f7 INT, f8 char(1));
|
|
INSERT INTO t1 VALUES (10, 1, 2, 3, 4, 5, 6, 7, "");
|
|
INSERT INTO t1 VALUES (11, 1, 2, 3, 4, 5, 6, 7, NULL);
|
|
INSERT INTO t1 VALUES (12, 1, 2, 3, NULL, 5, 6, 7, "A");
|
|
INSERT INTO t1 VALUES (13, 1, 2, 3, 0, 5, 6, 7, "A");
|
|
INSERT INTO t2 SELECT * FROM t1;
|
|
UPDATE t2 SET f4=5 WHERE f4>0 or f4 is NULL;
|
|
DELETE FROM t1;
|
|
DELETE FROM t2;
|
|
FLUSH BINARY LOGS;
|
|
/*!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 4
|
|
#<date> server id 1 end_log_pos 256 CRC32 XXX Start: xxx
|
|
ROLLBACK/*!*/;
|
|
# at 256
|
|
#<date> server id 1 end_log_pos 285 CRC32 XXX Gtid list []
|
|
# at 285
|
|
#<date> server id 1 end_log_pos 329 CRC32 XXX Binlog checkpoint master-bin.000001
|
|
# at 329
|
|
#<date> server id 1 end_log_pos 371 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 371
|
|
#<date> server id 1 end_log_pos 542 CRC32 XXX Query_compressed thread_id=5 exec_time=x error_code=0 xid=<xid>
|
|
use `test`/*!*/;
|
|
SET TIMESTAMP=X/*!*/;
|
|
SET @@session.pseudo_thread_id=5/*!*/;
|
|
SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=0, @@session.unique_checks=1, @@session.autocommit=1, @@session.check_constraint_checks=1, @@session.sql_if_exists=0/*!*/;
|
|
SET @@session.sql_mode=#/*!*/;
|
|
SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
|
|
/*!\C latin1 *//*!*/;
|
|
SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=#/*!*/;
|
|
SET @@session.lc_time_names=0/*!*/;
|
|
SET @@session.collation_database=DEFAULT/*!*/;
|
|
CREATE TABLE t1 (pk INT PRIMARY KEY, f1 INT, f2 INT, f3 TINYINT, f4 MEDIUMINT, f5 BIGINT, f6 INT, f7 INT, f8 char(1))
|
|
/*!*/;
|
|
# at 542
|
|
#<date> server id 1 end_log_pos 584 CRC32 XXX GTID 0-1-2 ddl
|
|
/*!100001 SET @@session.gtid_seq_no=2*//*!*/;
|
|
# at 584
|
|
#<date> server id 1 end_log_pos 745 CRC32 XXX Query_compressed thread_id=5 exec_time=x error_code=0 xid=<xid>
|
|
SET TIMESTAMP=X/*!*/;
|
|
CREATE TABLE t2 (pk INT PRIMARY KEY, f1 INT, f2 INT, f3 INT, f4 INT, f5 MEDIUMINT, f6 INT, f7 INT, f8 char(1))
|
|
/*!*/;
|
|
# at 745
|
|
#<date> server id 1 end_log_pos 787 CRC32 XXX GTID 0-1-3
|
|
/*!100001 SET @@session.gtid_seq_no=3*//*!*/;
|
|
START TRANSACTION
|
|
/*!*/;
|
|
# at 787
|
|
# at 861
|
|
#<date> server id 1 end_log_pos 861 CRC32 XXX Annotate_rows:
|
|
#Q> INSERT INTO t1 VALUES (10, 1, 2, 3, 4, 5, 6, 7, "")
|
|
#<date> server id 1 end_log_pos 917 CRC32 XXX Table_map: `test`.`t1` mapped to number num
|
|
# at 917
|
|
#<date> server id 1 end_log_pos 985 CRC32 XXX Write_compressed_rows: table id 32 flags: STMT_END_F
|
|
### INSERT INTO `test`.`t1`
|
|
### SET
|
|
### @1=10 /* INT meta=0 nullable=0 is_null=0 */
|
|
### @2=1 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @3=2 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @4=3 /* TINYINT meta=0 nullable=1 is_null=0 */
|
|
### @5=4 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
|
|
### @6=5 /* LONGINT meta=0 nullable=1 is_null=0 */
|
|
### @7=6 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @8=7 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @9='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
|
|
# Number of rows: 1
|
|
# at 985
|
|
#<date> server id 1 end_log_pos 1058 CRC32 XXX Query thread_id=5 exec_time=x error_code=0 xid=<xid>
|
|
SET TIMESTAMP=X/*!*/;
|
|
COMMIT
|
|
/*!*/;
|
|
# at 1058
|
|
#<date> server id 1 end_log_pos 1100 CRC32 XXX GTID 0-1-4
|
|
/*!100001 SET @@session.gtid_seq_no=4*//*!*/;
|
|
START TRANSACTION
|
|
/*!*/;
|
|
# at 1100
|
|
# at 1176
|
|
#<date> server id 1 end_log_pos 1176 CRC32 XXX Annotate_rows:
|
|
#Q> INSERT INTO t1 VALUES (11, 1, 2, 3, 4, 5, 6, 7, NULL)
|
|
#<date> server id 1 end_log_pos 1232 CRC32 XXX Table_map: `test`.`t1` mapped to number num
|
|
# at 1232
|
|
#<date> server id 1 end_log_pos 1299 CRC32 XXX Write_compressed_rows: table id 32 flags: STMT_END_F
|
|
### INSERT INTO `test`.`t1`
|
|
### SET
|
|
### @1=11 /* INT meta=0 nullable=0 is_null=0 */
|
|
### @2=1 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @3=2 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @4=3 /* TINYINT meta=0 nullable=1 is_null=0 */
|
|
### @5=4 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
|
|
### @6=5 /* LONGINT meta=0 nullable=1 is_null=0 */
|
|
### @7=6 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @8=7 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @9=NULL /* STRING(1) meta=65025 nullable=1 is_null=1 */
|
|
# Number of rows: 1
|
|
# at 1299
|
|
#<date> server id 1 end_log_pos 1372 CRC32 XXX Query thread_id=5 exec_time=x error_code=0 xid=<xid>
|
|
SET TIMESTAMP=X/*!*/;
|
|
COMMIT
|
|
/*!*/;
|
|
# at 1372
|
|
#<date> server id 1 end_log_pos 1414 CRC32 XXX GTID 0-1-5
|
|
/*!100001 SET @@session.gtid_seq_no=5*//*!*/;
|
|
START TRANSACTION
|
|
/*!*/;
|
|
# at 1414
|
|
# at 1492
|
|
#<date> server id 1 end_log_pos 1492 CRC32 XXX Annotate_rows:
|
|
#Q> INSERT INTO t1 VALUES (12, 1, 2, 3, NULL, 5, 6, 7, "A")
|
|
#<date> server id 1 end_log_pos 1548 CRC32 XXX Table_map: `test`.`t1` mapped to number num
|
|
# at 1548
|
|
#<date> server id 1 end_log_pos 1614 CRC32 XXX Write_compressed_rows: table id 32 flags: STMT_END_F
|
|
### INSERT INTO `test`.`t1`
|
|
### SET
|
|
### @1=12 /* INT meta=0 nullable=0 is_null=0 */
|
|
### @2=1 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @3=2 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @4=3 /* TINYINT meta=0 nullable=1 is_null=0 */
|
|
### @5=NULL /* MEDIUMINT meta=0 nullable=1 is_null=1 */
|
|
### @6=5 /* LONGINT meta=0 nullable=1 is_null=0 */
|
|
### @7=6 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @8=7 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @9='A' /* STRING(1) meta=65025 nullable=1 is_null=0 */
|
|
# Number of rows: 1
|
|
# at 1614
|
|
#<date> server id 1 end_log_pos 1687 CRC32 XXX Query thread_id=5 exec_time=x error_code=0 xid=<xid>
|
|
SET TIMESTAMP=X/*!*/;
|
|
COMMIT
|
|
/*!*/;
|
|
# at 1687
|
|
#<date> server id 1 end_log_pos 1729 CRC32 XXX GTID 0-1-6
|
|
/*!100001 SET @@session.gtid_seq_no=6*//*!*/;
|
|
START TRANSACTION
|
|
/*!*/;
|
|
# at 1729
|
|
# at 1804
|
|
#<date> server id 1 end_log_pos 1804 CRC32 XXX Annotate_rows:
|
|
#Q> INSERT INTO t1 VALUES (13, 1, 2, 3, 0, 5, 6, 7, "A")
|
|
#<date> server id 1 end_log_pos 1860 CRC32 XXX Table_map: `test`.`t1` mapped to number num
|
|
# at 1860
|
|
#<date> server id 1 end_log_pos 1927 CRC32 XXX Write_compressed_rows: table id 32 flags: STMT_END_F
|
|
### INSERT INTO `test`.`t1`
|
|
### SET
|
|
### @1=13 /* INT meta=0 nullable=0 is_null=0 */
|
|
### @2=1 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @3=2 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @4=3 /* TINYINT meta=0 nullable=1 is_null=0 */
|
|
### @5=0 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
|
|
### @6=5 /* LONGINT meta=0 nullable=1 is_null=0 */
|
|
### @7=6 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @8=7 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @9='A' /* STRING(1) meta=65025 nullable=1 is_null=0 */
|
|
# Number of rows: 1
|
|
# at 1927
|
|
#<date> server id 1 end_log_pos 2000 CRC32 XXX Query thread_id=5 exec_time=x error_code=0 xid=<xid>
|
|
SET TIMESTAMP=X/*!*/;
|
|
COMMIT
|
|
/*!*/;
|
|
# at 2000
|
|
#<date> server id 1 end_log_pos 2042 CRC32 XXX GTID 0-1-7
|
|
/*!100001 SET @@session.gtid_seq_no=7*//*!*/;
|
|
START TRANSACTION
|
|
/*!*/;
|
|
# at 2042
|
|
# at 2096
|
|
#<date> server id 1 end_log_pos 2096 CRC32 XXX Annotate_rows:
|
|
#Q> INSERT INTO t2 SELECT * FROM t1
|
|
#<date> server id 1 end_log_pos 2152 CRC32 XXX Table_map: `test`.`t2` mapped to number num
|
|
# at 2152
|
|
#<date> server id 1 end_log_pos 2243 CRC32 XXX Write_compressed_rows: table id 33 flags: STMT_END_F
|
|
### INSERT INTO `test`.`t2`
|
|
### SET
|
|
### @1=10 /* INT meta=0 nullable=0 is_null=0 */
|
|
### @2=1 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @3=2 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @4=3 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @5=4 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @6=5 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
|
|
### @7=6 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @8=7 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @9='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
|
|
### INSERT INTO `test`.`t2`
|
|
### SET
|
|
### @1=11 /* INT meta=0 nullable=0 is_null=0 */
|
|
### @2=1 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @3=2 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @4=3 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @5=4 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @6=5 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
|
|
### @7=6 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @8=7 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @9=NULL /* STRING(1) meta=65025 nullable=1 is_null=1 */
|
|
### INSERT INTO `test`.`t2`
|
|
### SET
|
|
### @1=12 /* INT meta=0 nullable=0 is_null=0 */
|
|
### @2=1 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @3=2 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @4=3 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @5=NULL /* INT meta=0 nullable=1 is_null=1 */
|
|
### @6=5 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
|
|
### @7=6 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @8=7 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @9='A' /* STRING(1) meta=65025 nullable=1 is_null=0 */
|
|
### INSERT INTO `test`.`t2`
|
|
### SET
|
|
### @1=13 /* INT meta=0 nullable=0 is_null=0 */
|
|
### @2=1 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @3=2 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @4=3 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @5=0 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @6=5 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
|
|
### @7=6 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @8=7 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @9='A' /* STRING(1) meta=65025 nullable=1 is_null=0 */
|
|
# Number of rows: 4
|
|
# at 2243
|
|
#<date> server id 1 end_log_pos 2316 CRC32 XXX Query thread_id=5 exec_time=x error_code=0 xid=<xid>
|
|
SET TIMESTAMP=X/*!*/;
|
|
COMMIT
|
|
/*!*/;
|
|
# at 2316
|
|
#<date> server id 1 end_log_pos 2358 CRC32 XXX GTID 0-1-8
|
|
/*!100001 SET @@session.gtid_seq_no=8*//*!*/;
|
|
START TRANSACTION
|
|
/*!*/;
|
|
# at 2358
|
|
# at 2424
|
|
#<date> server id 1 end_log_pos 2424 CRC32 XXX Annotate_rows:
|
|
#Q> UPDATE t2 SET f4=5 WHERE f4>0 or f4 is NULL
|
|
#<date> server id 1 end_log_pos 2480 CRC32 XXX Table_map: `test`.`t2` mapped to number num
|
|
# at 2480
|
|
#<date> server id 1 end_log_pos 2579 CRC32 XXX Update_compressed_rows: table id 33 flags: STMT_END_F
|
|
### UPDATE `test`.`t2`
|
|
### WHERE
|
|
### @1=10 /* INT meta=0 nullable=0 is_null=0 */
|
|
### @2=1 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @3=2 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @4=3 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @5=4 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @6=5 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
|
|
### @7=6 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @8=7 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @9='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
|
|
### SET
|
|
### @1=10 /* INT meta=0 nullable=0 is_null=0 */
|
|
### @2=1 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @3=2 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @4=3 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @5=5 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @6=5 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
|
|
### @7=6 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @8=7 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @9='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
|
|
### UPDATE `test`.`t2`
|
|
### WHERE
|
|
### @1=11 /* INT meta=0 nullable=0 is_null=0 */
|
|
### @2=1 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @3=2 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @4=3 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @5=4 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @6=5 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
|
|
### @7=6 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @8=7 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @9=NULL /* STRING(1) meta=65025 nullable=1 is_null=1 */
|
|
### SET
|
|
### @1=11 /* INT meta=0 nullable=0 is_null=0 */
|
|
### @2=1 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @3=2 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @4=3 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @5=5 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @6=5 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
|
|
### @7=6 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @8=7 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @9=NULL /* STRING(1) meta=65025 nullable=1 is_null=1 */
|
|
### UPDATE `test`.`t2`
|
|
### WHERE
|
|
### @1=12 /* INT meta=0 nullable=0 is_null=0 */
|
|
### @2=1 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @3=2 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @4=3 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @5=NULL /* INT meta=0 nullable=1 is_null=1 */
|
|
### @6=5 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
|
|
### @7=6 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @8=7 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @9='A' /* STRING(1) meta=65025 nullable=1 is_null=0 */
|
|
### SET
|
|
### @1=12 /* INT meta=0 nullable=0 is_null=0 */
|
|
### @2=1 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @3=2 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @4=3 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @5=5 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @6=5 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
|
|
### @7=6 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @8=7 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @9='A' /* STRING(1) meta=65025 nullable=1 is_null=0 */
|
|
# Number of rows: 3
|
|
# at 2579
|
|
#<date> server id 1 end_log_pos 2652 CRC32 XXX Query thread_id=5 exec_time=x error_code=0 xid=<xid>
|
|
SET TIMESTAMP=X/*!*/;
|
|
COMMIT
|
|
/*!*/;
|
|
# at 2652
|
|
#<date> server id 1 end_log_pos 2694 CRC32 XXX GTID 0-1-9
|
|
/*!100001 SET @@session.gtid_seq_no=9*//*!*/;
|
|
START TRANSACTION
|
|
/*!*/;
|
|
# at 2694
|
|
# at 2731
|
|
#<date> server id 1 end_log_pos 2731 CRC32 XXX Annotate_rows:
|
|
#Q> DELETE FROM t1
|
|
#<date> server id 1 end_log_pos 2787 CRC32 XXX Table_map: `test`.`t1` mapped to number num
|
|
# at 2787
|
|
#<date> server id 1 end_log_pos 2879 CRC32 XXX Delete_compressed_rows: table id 32 flags: STMT_END_F
|
|
### DELETE FROM `test`.`t1`
|
|
### WHERE
|
|
### @1=10 /* INT meta=0 nullable=0 is_null=0 */
|
|
### @2=1 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @3=2 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @4=3 /* TINYINT meta=0 nullable=1 is_null=0 */
|
|
### @5=4 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
|
|
### @6=5 /* LONGINT meta=0 nullable=1 is_null=0 */
|
|
### @7=6 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @8=7 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @9='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
|
|
### DELETE FROM `test`.`t1`
|
|
### WHERE
|
|
### @1=11 /* INT meta=0 nullable=0 is_null=0 */
|
|
### @2=1 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @3=2 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @4=3 /* TINYINT meta=0 nullable=1 is_null=0 */
|
|
### @5=4 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
|
|
### @6=5 /* LONGINT meta=0 nullable=1 is_null=0 */
|
|
### @7=6 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @8=7 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @9=NULL /* STRING(1) meta=65025 nullable=1 is_null=1 */
|
|
### DELETE FROM `test`.`t1`
|
|
### WHERE
|
|
### @1=12 /* INT meta=0 nullable=0 is_null=0 */
|
|
### @2=1 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @3=2 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @4=3 /* TINYINT meta=0 nullable=1 is_null=0 */
|
|
### @5=NULL /* MEDIUMINT meta=0 nullable=1 is_null=1 */
|
|
### @6=5 /* LONGINT meta=0 nullable=1 is_null=0 */
|
|
### @7=6 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @8=7 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @9='A' /* STRING(1) meta=65025 nullable=1 is_null=0 */
|
|
### DELETE FROM `test`.`t1`
|
|
### WHERE
|
|
### @1=13 /* INT meta=0 nullable=0 is_null=0 */
|
|
### @2=1 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @3=2 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @4=3 /* TINYINT meta=0 nullable=1 is_null=0 */
|
|
### @5=0 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
|
|
### @6=5 /* LONGINT meta=0 nullable=1 is_null=0 */
|
|
### @7=6 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @8=7 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @9='A' /* STRING(1) meta=65025 nullable=1 is_null=0 */
|
|
# Number of rows: 4
|
|
# at 2879
|
|
#<date> server id 1 end_log_pos 2952 CRC32 XXX Query thread_id=5 exec_time=x error_code=0 xid=<xid>
|
|
SET TIMESTAMP=X/*!*/;
|
|
COMMIT
|
|
/*!*/;
|
|
# at 2952
|
|
#<date> server id 1 end_log_pos 2994 CRC32 XXX GTID 0-1-10
|
|
/*!100001 SET @@session.gtid_seq_no=10*//*!*/;
|
|
START TRANSACTION
|
|
/*!*/;
|
|
# at 2994
|
|
# at 3031
|
|
#<date> server id 1 end_log_pos 3031 CRC32 XXX Annotate_rows:
|
|
#Q> DELETE FROM t2
|
|
#<date> server id 1 end_log_pos 3087 CRC32 XXX Table_map: `test`.`t2` mapped to number num
|
|
# at 3087
|
|
#<date> server id 1 end_log_pos 3172 CRC32 XXX Delete_compressed_rows: table id 33 flags: STMT_END_F
|
|
### DELETE FROM `test`.`t2`
|
|
### WHERE
|
|
### @1=10 /* INT meta=0 nullable=0 is_null=0 */
|
|
### @2=1 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @3=2 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @4=3 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @5=5 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @6=5 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
|
|
### @7=6 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @8=7 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @9='' /* STRING(1) meta=65025 nullable=1 is_null=0 */
|
|
### DELETE FROM `test`.`t2`
|
|
### WHERE
|
|
### @1=11 /* INT meta=0 nullable=0 is_null=0 */
|
|
### @2=1 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @3=2 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @4=3 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @5=5 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @6=5 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
|
|
### @7=6 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @8=7 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @9=NULL /* STRING(1) meta=65025 nullable=1 is_null=1 */
|
|
### DELETE FROM `test`.`t2`
|
|
### WHERE
|
|
### @1=12 /* INT meta=0 nullable=0 is_null=0 */
|
|
### @2=1 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @3=2 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @4=3 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @5=5 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @6=5 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
|
|
### @7=6 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @8=7 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @9='A' /* STRING(1) meta=65025 nullable=1 is_null=0 */
|
|
### DELETE FROM `test`.`t2`
|
|
### WHERE
|
|
### @1=13 /* INT meta=0 nullable=0 is_null=0 */
|
|
### @2=1 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @3=2 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @4=3 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @5=0 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @6=5 /* MEDIUMINT meta=0 nullable=1 is_null=0 */
|
|
### @7=6 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @8=7 /* INT meta=0 nullable=1 is_null=0 */
|
|
### @9='A' /* STRING(1) meta=65025 nullable=1 is_null=0 */
|
|
# Number of rows: 4
|
|
# at 3172
|
|
#<date> server id 1 end_log_pos 3245 CRC32 XXX Query thread_id=5 exec_time=x error_code=0 xid=<xid>
|
|
SET TIMESTAMP=X/*!*/;
|
|
COMMIT
|
|
/*!*/;
|
|
# at 3245
|
|
#<date> server id 1 end_log_pos 3293 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*/;
|
|
|
|
Test mysqlbinlog | mysql type point-in-time recovery with compressed events.
|
|
|
|
FLUSH BINARY LOGS;
|
|
CREATE TABLE t3 (a INT PRIMARY KEY, b INT, c VARCHAR(100));
|
|
INSERT INTO t3 VALUES (0, 10, "hello");
|
|
BEGIN;
|
|
INSERT INTO t3 VALUES (1, 10, "cat"), (2, 10, "mouse"), (3, 10, "dog");
|
|
INSERT INTO t3 VALUES (4, 10, "goodbye");
|
|
COMMIT;
|
|
UPDATE t3 SET b=b+100 where a<>1;
|
|
DELETE FROM t3 WHERE a=2;
|
|
SET @old_image=@@binlog_row_image;
|
|
SET binlog_row_image=minimal;
|
|
INSERT INTO t3 VALUES (5, 20, "red"), (6, 30, "green"), (7, 40, "blue");
|
|
INSERT INTO t3 VALUES (8, 20, "rigel");
|
|
UPDATE t3 SET c = concat("colour of ", c) WHERE a > 5;
|
|
UPDATE t3 SET b=b*2 WHERE a IN (5,6,7);
|
|
DELETE FROM t3 WHERE a=6;
|
|
SET binlog_row_image=@old_image;
|
|
SELECT * FROM t3 ORDER BY a;
|
|
a b c
|
|
0 110 hello
|
|
1 10 cat
|
|
3 110 dog
|
|
4 110 goodbye
|
|
5 40 red
|
|
7 80 colour of blue
|
|
8 20 colour of rigel
|
|
FLUSH LOGS;
|
|
DROP TABLE t3;
|
|
SELECT * FROM t3 ORDER BY a;
|
|
a b c
|
|
0 110 hello
|
|
1 10 cat
|
|
3 110 dog
|
|
4 110 goodbye
|
|
5 40 red
|
|
7 80 colour of blue
|
|
8 20 colour of rigel
|
|
DROP TABLE t1,t2,t3;
|
|
SET GLOBAL log_bin_compress=off;
|
|
SET GLOBAL log_bin_compress_min_len=256;
|