mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
Merge 10.3 into 10.4
This commit is contained in:
@ -365,7 +365,7 @@ wsrep_forced_binlog_format=none
|
|||||||
special value NONE, meaning that there is no forced binlog format in effect.
|
special value NONE, meaning that there is no forced binlog format in effect.
|
||||||
This variable was introduced to support STATEMENT format replication during
|
This variable was introduced to support STATEMENT format replication during
|
||||||
rolling schema upgrade processing. However, in most cases ROW replication
|
rolling schema upgrade processing. However, in most cases ROW replication
|
||||||
is valid for asymmetrict schema replication.
|
is valid for asymmetric schema replication.
|
||||||
|
|
||||||
State snapshot transfer options.
|
State snapshot transfer options.
|
||||||
|
|
||||||
@ -416,7 +416,7 @@ wsrep_sst_donor=
|
|||||||
|
|
||||||
6. ONLINE SCHEMA UPGRADE
|
6. ONLINE SCHEMA UPGRADE
|
||||||
|
|
||||||
Schema upgrades mean any data definition statements (DDL statemnents) run
|
Schema upgrades mean any data definition statements (DDL statements) run
|
||||||
for the database. They change the database structure and are non-
|
for the database. They change the database structure and are non-
|
||||||
transactional.
|
transactional.
|
||||||
|
|
||||||
@ -429,7 +429,7 @@ wsrep_sst_donor=
|
|||||||
|
|
||||||
With earlier releases, DDL processing happened always by Total Order
|
With earlier releases, DDL processing happened always by Total Order
|
||||||
Isolation (TOI) method. With TOI, the DDL was scheduled to be processed in
|
Isolation (TOI) method. With TOI, the DDL was scheduled to be processed in
|
||||||
same transaction seqeuncing 'slot' in each cluster node.
|
same transaction sequencing 'slot' in each cluster node.
|
||||||
The processing is secured by locking the affected table from any other use.
|
The processing is secured by locking the affected table from any other use.
|
||||||
With TOI method, the whole cluster has part of the database locked for the
|
With TOI method, the whole cluster has part of the database locked for the
|
||||||
duration of the DDL processing.
|
duration of the DDL processing.
|
||||||
|
@ -177,7 +177,7 @@ HA_EXTRA_NO_KEYREAD=8 Normal read of records (def)
|
|||||||
HA_EXTRA_NO_USER_CHANGE=9 No user is allowed to write
|
HA_EXTRA_NO_USER_CHANGE=9 No user is allowed to write
|
||||||
HA_EXTRA_KEY_CACHE=10
|
HA_EXTRA_KEY_CACHE=10
|
||||||
HA_EXTRA_NO_KEY_CACHE=11
|
HA_EXTRA_NO_KEY_CACHE=11
|
||||||
HA_EXTRA_WAIT_LOCK=12 Wait until file is avalably (def)
|
HA_EXTRA_WAIT_LOCK=12 Wait until file is available (def)
|
||||||
HA_EXTRA_NO_WAIT_LOCK=13 If file is locked, return quickly
|
HA_EXTRA_NO_WAIT_LOCK=13 If file is locked, return quickly
|
||||||
HA_EXTRA_WRITE_CACHE=14 Use write cache in ha_write()
|
HA_EXTRA_WRITE_CACHE=14 Use write cache in ha_write()
|
||||||
HA_EXTRA_FLUSH_CACHE=15 flush write_record_cache
|
HA_EXTRA_FLUSH_CACHE=15 flush write_record_cache
|
||||||
|
@ -18,15 +18,12 @@ ddl_log_file_alter_table 0
|
|||||||
SET DEBUG_SYNC = 'RESET';
|
SET DEBUG_SYNC = 'RESET';
|
||||||
SET DEBUG_SYNC = 'write_row_noreplace SIGNAL have_handle WAIT_FOR go_ahead';
|
SET DEBUG_SYNC = 'write_row_noreplace SIGNAL have_handle WAIT_FOR go_ahead';
|
||||||
INSERT INTO t1 VALUES(1,2,3);
|
INSERT INTO t1 VALUES(1,2,3);
|
||||||
# Establish session con1 (user=root)
|
|
||||||
connect con1,localhost,root,,;
|
connect con1,localhost,root,,;
|
||||||
connection con1;
|
|
||||||
SET DEBUG_SYNC = 'now WAIT_FOR have_handle';
|
SET DEBUG_SYNC = 'now WAIT_FOR have_handle';
|
||||||
SET lock_wait_timeout = 1;
|
SET lock_wait_timeout = 1;
|
||||||
ALTER TABLE t1 ROW_FORMAT=REDUNDANT;
|
ALTER TABLE t1 ROW_FORMAT=REDUNDANT;
|
||||||
ERROR HY000: Lock wait timeout exceeded; try restarting transaction
|
ERROR HY000: Lock wait timeout exceeded; try restarting transaction
|
||||||
SET DEBUG_SYNC = 'now SIGNAL go_ahead';
|
SET DEBUG_SYNC = 'now SIGNAL go_ahead';
|
||||||
# session default
|
|
||||||
connection default;
|
connection default;
|
||||||
ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
|
ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
|
||||||
SELECT name, count FROM INFORMATION_SCHEMA.INNODB_METRICS WHERE subsystem = 'ddl';
|
SELECT name, count FROM INFORMATION_SCHEMA.INNODB_METRICS WHERE subsystem = 'ddl';
|
||||||
@ -37,7 +34,6 @@ ddl_online_create_index 0
|
|||||||
ddl_pending_alter_table 0
|
ddl_pending_alter_table 0
|
||||||
ddl_sort_file_alter_table 0
|
ddl_sort_file_alter_table 0
|
||||||
ddl_log_file_alter_table 0
|
ddl_log_file_alter_table 0
|
||||||
# session con1
|
|
||||||
connection con1;
|
connection con1;
|
||||||
SET @saved_debug_dbug = @@SESSION.debug_dbug;
|
SET @saved_debug_dbug = @@SESSION.debug_dbug;
|
||||||
SET DEBUG_DBUG = '+d,innodb_OOM_prepare_inplace_alter';
|
SET DEBUG_DBUG = '+d,innodb_OOM_prepare_inplace_alter';
|
||||||
@ -55,7 +51,6 @@ SET SESSION DEBUG = @saved_debug_dbug;
|
|||||||
Warnings:
|
Warnings:
|
||||||
Warning 1287 '@@debug' is deprecated and will be removed in a future release. Please use '@@debug_dbug' instead
|
Warning 1287 '@@debug' is deprecated and will be removed in a future release. Please use '@@debug_dbug' instead
|
||||||
ALTER TABLE t1 ROW_FORMAT=REDUNDANT, ALGORITHM=INPLACE, LOCK=NONE;
|
ALTER TABLE t1 ROW_FORMAT=REDUNDANT, ALGORITHM=INPLACE, LOCK=NONE;
|
||||||
# session default
|
|
||||||
connection default;
|
connection default;
|
||||||
SHOW CREATE TABLE t1;
|
SHOW CREATE TABLE t1;
|
||||||
Table Create Table
|
Table Create Table
|
||||||
@ -67,22 +62,17 @@ t1 CREATE TABLE `t1` (
|
|||||||
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci ROW_FORMAT=REDUNDANT
|
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci ROW_FORMAT=REDUNDANT
|
||||||
BEGIN;
|
BEGIN;
|
||||||
INSERT INTO t1 VALUES(7,4,2);
|
INSERT INTO t1 VALUES(7,4,2);
|
||||||
# session con1
|
|
||||||
connection con1;
|
connection con1;
|
||||||
SET DEBUG_SYNC = 'row_log_table_apply1_before SIGNAL scanned WAIT_FOR insert_done';
|
SET DEBUG_SYNC = 'row_log_table_apply1_before SIGNAL scanned WAIT_FOR insert_done';
|
||||||
ALTER TABLE t1 DROP PRIMARY KEY, ADD UNIQUE INDEX(c2);
|
ALTER TABLE t1 DROP PRIMARY KEY, ADD UNIQUE INDEX(c2);
|
||||||
ERROR HY000: Lock wait timeout exceeded; try restarting transaction
|
ERROR HY000: Lock wait timeout exceeded; try restarting transaction
|
||||||
# session default
|
|
||||||
connection default;
|
connection default;
|
||||||
COMMIT;
|
COMMIT;
|
||||||
# session con1
|
|
||||||
connection con1;
|
connection con1;
|
||||||
ALTER TABLE t1 DROP PRIMARY KEY, ADD UNIQUE INDEX(c2);
|
ALTER TABLE t1 DROP PRIMARY KEY, ADD UNIQUE INDEX(c2);
|
||||||
ERROR 23000: Duplicate entry '4' for key 'c2'
|
ERROR 23000: Duplicate entry '4' for key 'c2'
|
||||||
# session default
|
|
||||||
connection default;
|
connection default;
|
||||||
DELETE FROM t1 WHERE c1 = 7;
|
DELETE FROM t1 WHERE c1 = 7;
|
||||||
# session con1
|
|
||||||
connection con1;
|
connection con1;
|
||||||
ALTER TABLE t1 DROP PRIMARY KEY, ADD UNIQUE INDEX(c2), ROW_FORMAT=COMPACT,
|
ALTER TABLE t1 DROP PRIMARY KEY, ADD UNIQUE INDEX(c2), ROW_FORMAT=COMPACT,
|
||||||
LOCK = SHARED, ALGORITHM = INPLACE;
|
LOCK = SHARED, ALGORITHM = INPLACE;
|
||||||
@ -100,7 +90,6 @@ t1 CREATE TABLE `t1` (
|
|||||||
UNIQUE KEY `c2_2` (`c2`)
|
UNIQUE KEY `c2_2` (`c2`)
|
||||||
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci ROW_FORMAT=COMPACT
|
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci ROW_FORMAT=COMPACT
|
||||||
ALTER TABLE t1 DROP INDEX c2, ADD PRIMARY KEY(c1);
|
ALTER TABLE t1 DROP INDEX c2, ADD PRIMARY KEY(c1);
|
||||||
# session default
|
|
||||||
connection default;
|
connection default;
|
||||||
SET DEBUG_SYNC = 'now WAIT_FOR scanned';
|
SET DEBUG_SYNC = 'now WAIT_FOR scanned';
|
||||||
SELECT name, count FROM INFORMATION_SCHEMA.INNODB_METRICS WHERE subsystem = 'ddl';
|
SELECT name, count FROM INFORMATION_SCHEMA.INNODB_METRICS WHERE subsystem = 'ddl';
|
||||||
@ -114,13 +103,10 @@ ddl_log_file_alter_table 0
|
|||||||
BEGIN;
|
BEGIN;
|
||||||
INSERT INTO t1 VALUES(4,7,2);
|
INSERT INTO t1 VALUES(4,7,2);
|
||||||
SET DEBUG_SYNC = 'now SIGNAL insert_done';
|
SET DEBUG_SYNC = 'now SIGNAL insert_done';
|
||||||
# session con1
|
|
||||||
connection con1;
|
connection con1;
|
||||||
ERROR 23000: Duplicate entry '4' for key 'PRIMARY'
|
ERROR 23000: Duplicate entry '4' for key 'PRIMARY'
|
||||||
# session default
|
|
||||||
connection default;
|
connection default;
|
||||||
ROLLBACK;
|
ROLLBACK;
|
||||||
# session con1
|
|
||||||
connection con1;
|
connection con1;
|
||||||
SHOW CREATE TABLE t1;
|
SHOW CREATE TABLE t1;
|
||||||
Table Create Table
|
Table Create Table
|
||||||
@ -142,7 +128,6 @@ ddl_online_create_index 0
|
|||||||
ddl_pending_alter_table 0
|
ddl_pending_alter_table 0
|
||||||
ddl_sort_file_alter_table 0
|
ddl_sort_file_alter_table 0
|
||||||
ddl_log_file_alter_table 0
|
ddl_log_file_alter_table 0
|
||||||
# session default
|
|
||||||
connection default;
|
connection default;
|
||||||
INSERT INTO t1 VALUES(6,3,1);
|
INSERT INTO t1 VALUES(6,3,1);
|
||||||
ERROR 23000: Duplicate entry '3' for key 'c2_2'
|
ERROR 23000: Duplicate entry '3' for key 'c2_2'
|
||||||
@ -152,14 +137,12 @@ DROP INDEX c2_2 ON t1;
|
|||||||
BEGIN;
|
BEGIN;
|
||||||
INSERT INTO t1 VALUES(7,4,2);
|
INSERT INTO t1 VALUES(7,4,2);
|
||||||
ROLLBACK;
|
ROLLBACK;
|
||||||
# session con1
|
|
||||||
connection con1;
|
connection con1;
|
||||||
KILL QUERY @id;
|
KILL QUERY @id;
|
||||||
ERROR 70100: Query execution was interrupted
|
ERROR 70100: Query execution was interrupted
|
||||||
SET DEBUG_SYNC = 'row_log_table_apply1_before SIGNAL rebuilt WAIT_FOR dml_done';
|
SET DEBUG_SYNC = 'row_log_table_apply1_before SIGNAL rebuilt WAIT_FOR dml_done';
|
||||||
SET DEBUG_SYNC = 'row_log_table_apply2_before SIGNAL applied WAIT_FOR kill_done';
|
SET DEBUG_SYNC = 'row_log_table_apply2_before SIGNAL applied WAIT_FOR kill_done';
|
||||||
ALTER TABLE t1 ROW_FORMAT=REDUNDANT;
|
ALTER TABLE t1 ROW_FORMAT=REDUNDANT;
|
||||||
# session default
|
|
||||||
connection default;
|
connection default;
|
||||||
SET DEBUG_SYNC = 'now WAIT_FOR rebuilt';
|
SET DEBUG_SYNC = 'now WAIT_FOR rebuilt';
|
||||||
SELECT name, count FROM INFORMATION_SCHEMA.INNODB_METRICS WHERE subsystem = 'ddl';
|
SELECT name, count FROM INFORMATION_SCHEMA.INNODB_METRICS WHERE subsystem = 'ddl';
|
||||||
@ -176,7 +159,6 @@ ROLLBACK;
|
|||||||
SET DEBUG_SYNC = 'now SIGNAL dml_done WAIT_FOR applied';
|
SET DEBUG_SYNC = 'now SIGNAL dml_done WAIT_FOR applied';
|
||||||
KILL QUERY @id;
|
KILL QUERY @id;
|
||||||
SET DEBUG_SYNC = 'now SIGNAL kill_done';
|
SET DEBUG_SYNC = 'now SIGNAL kill_done';
|
||||||
# session con1
|
|
||||||
connection con1;
|
connection con1;
|
||||||
ERROR 70100: Query execution was interrupted
|
ERROR 70100: Query execution was interrupted
|
||||||
SELECT name, count FROM INFORMATION_SCHEMA.INNODB_METRICS WHERE subsystem = 'ddl';
|
SELECT name, count FROM INFORMATION_SCHEMA.INNODB_METRICS WHERE subsystem = 'ddl';
|
||||||
@ -187,7 +169,6 @@ ddl_online_create_index 0
|
|||||||
ddl_pending_alter_table 0
|
ddl_pending_alter_table 0
|
||||||
ddl_sort_file_alter_table 0
|
ddl_sort_file_alter_table 0
|
||||||
ddl_log_file_alter_table 0
|
ddl_log_file_alter_table 0
|
||||||
# session default
|
|
||||||
connection default;
|
connection default;
|
||||||
CHECK TABLE t1;
|
CHECK TABLE t1;
|
||||||
Table Op Msg_type Msg_text
|
Table Op Msg_type Msg_text
|
||||||
@ -212,7 +193,6 @@ WHERE variable_name = 'innodb_encryption_n_merge_blocks_decrypted');
|
|||||||
SET @rowlog_encrypt_0=
|
SET @rowlog_encrypt_0=
|
||||||
(SELECT variable_value FROM information_schema.global_status
|
(SELECT variable_value FROM information_schema.global_status
|
||||||
WHERE variable_name = 'innodb_encryption_n_rowlog_blocks_encrypted');
|
WHERE variable_name = 'innodb_encryption_n_rowlog_blocks_encrypted');
|
||||||
# session con1
|
|
||||||
connection con1;
|
connection con1;
|
||||||
SHOW CREATE TABLE t1;
|
SHOW CREATE TABLE t1;
|
||||||
Table Create Table
|
Table Create Table
|
||||||
@ -227,7 +207,6 @@ SET DEBUG_SYNC = 'row_log_table_apply1_before SIGNAL rebuilt2 WAIT_FOR dml2_done
|
|||||||
SET lock_wait_timeout = 10;
|
SET lock_wait_timeout = 10;
|
||||||
ALTER TABLE t1 ROW_FORMAT=COMPACT
|
ALTER TABLE t1 ROW_FORMAT=COMPACT
|
||||||
PAGE_COMPRESSED = YES PAGE_COMPRESSION_LEVEL = 1, ALGORITHM = INPLACE;
|
PAGE_COMPRESSED = YES PAGE_COMPRESSION_LEVEL = 1, ALGORITHM = INPLACE;
|
||||||
# session default
|
|
||||||
connection default;
|
connection default;
|
||||||
INSERT INTO t1 SELECT 80 + c1, c2, c3 FROM t1;
|
INSERT INTO t1 SELECT 80 + c1, c2, c3 FROM t1;
|
||||||
INSERT INTO t1 SELECT 160 + c1, c2, c3 FROM t1;
|
INSERT INTO t1 SELECT 160 + c1, c2, c3 FROM t1;
|
||||||
@ -290,7 +269,6 @@ SELECT
|
|||||||
sort_balance @merge_encrypt_1>@merge_encrypt_0 @merge_decrypt_1>@merge_decrypt_0 @rowlog_encrypt_1>@rowlog_encrypt_0
|
sort_balance @merge_encrypt_1>@merge_encrypt_0 @merge_decrypt_1>@merge_decrypt_0 @rowlog_encrypt_1>@rowlog_encrypt_0
|
||||||
0 0 0 0
|
0 0 0 0
|
||||||
SET DEBUG_SYNC = 'now SIGNAL dml2_done';
|
SET DEBUG_SYNC = 'now SIGNAL dml2_done';
|
||||||
# session con1
|
|
||||||
connection con1;
|
connection con1;
|
||||||
ERROR HY000: Creating index 'PRIMARY' required more than 'innodb_online_alter_log_max_size' bytes of modification log. Please try again
|
ERROR HY000: Creating index 'PRIMARY' required more than 'innodb_online_alter_log_max_size' bytes of modification log. Please try again
|
||||||
SELECT name, count FROM INFORMATION_SCHEMA.INNODB_METRICS WHERE subsystem = 'ddl';
|
SELECT name, count FROM INFORMATION_SCHEMA.INNODB_METRICS WHERE subsystem = 'ddl';
|
||||||
@ -321,7 +299,6 @@ ERROR 23000: Duplicate entry '5' for key 'PRIMARY'
|
|||||||
ALTER TABLE t1 DROP PRIMARY KEY, ADD PRIMARY KEY(c22f,c1,c4(5)),
|
ALTER TABLE t1 DROP PRIMARY KEY, ADD PRIMARY KEY(c22f,c1,c4(5)),
|
||||||
CHANGE c2 c22f INT, CHANGE c3 c3 CHAR(255) NULL, CHANGE c1 c1 INT AFTER c22f,
|
CHANGE c2 c22f INT, CHANGE c3 c3 CHAR(255) NULL, CHANGE c1 c1 INT AFTER c22f,
|
||||||
ADD COLUMN c4 VARCHAR(6) DEFAULT 'Online', LOCK=NONE;
|
ADD COLUMN c4 VARCHAR(6) DEFAULT 'Online', LOCK=NONE;
|
||||||
# session default
|
|
||||||
connection default;
|
connection default;
|
||||||
SET DEBUG_SYNC = 'now WAIT_FOR rebuilt3';
|
SET DEBUG_SYNC = 'now WAIT_FOR rebuilt3';
|
||||||
SELECT name, count FROM INFORMATION_SCHEMA.INNODB_METRICS WHERE subsystem = 'ddl';
|
SELECT name, count FROM INFORMATION_SCHEMA.INNODB_METRICS WHERE subsystem = 'ddl';
|
||||||
@ -349,7 +326,6 @@ ddl_pending_alter_table 1
|
|||||||
ddl_sort_file_alter_table 2
|
ddl_sort_file_alter_table 2
|
||||||
ddl_log_file_alter_table 2
|
ddl_log_file_alter_table 2
|
||||||
SET DEBUG_SYNC = 'now SIGNAL dml3_done';
|
SET DEBUG_SYNC = 'now SIGNAL dml3_done';
|
||||||
# session con1
|
|
||||||
connection con1;
|
connection con1;
|
||||||
SELECT name, count FROM INFORMATION_SCHEMA.INNODB_METRICS WHERE subsystem = 'ddl';
|
SELECT name, count FROM INFORMATION_SCHEMA.INNODB_METRICS WHERE subsystem = 'ddl';
|
||||||
name count
|
name count
|
||||||
@ -405,20 +381,16 @@ SET DEBUG_SYNC = 'row_log_table_apply1_before SIGNAL c3p5_created0 WAIT_FOR ins_
|
|||||||
ALTER TABLE t1 MODIFY c3 CHAR(255) NOT NULL, DROP COLUMN c22f,
|
ALTER TABLE t1 MODIFY c3 CHAR(255) NOT NULL, DROP COLUMN c22f,
|
||||||
DROP PRIMARY KEY, ADD PRIMARY KEY(c1,c4(5)),
|
DROP PRIMARY KEY, ADD PRIMARY KEY(c1,c4(5)),
|
||||||
ADD COLUMN c5 CHAR(5) DEFAULT 'tired' FIRST;
|
ADD COLUMN c5 CHAR(5) DEFAULT 'tired' FIRST;
|
||||||
# session default
|
|
||||||
connection default;
|
connection default;
|
||||||
SET DEBUG_SYNC = 'now WAIT_FOR c3p5_created0';
|
SET DEBUG_SYNC = 'now WAIT_FOR c3p5_created0';
|
||||||
BEGIN;
|
BEGIN;
|
||||||
INSERT INTO t1 VALUES(347,33101,'Pikku kakkosen posti','YLETV2');
|
INSERT INTO t1 VALUES(347,33101,'Pikku kakkosen posti','YLETV2');
|
||||||
INSERT INTO t1 VALUES(33101,347,NULL,'');
|
INSERT INTO t1 VALUES(33101,347,NULL,'');
|
||||||
SET DEBUG_SYNC = 'now SIGNAL ins_done0';
|
SET DEBUG_SYNC = 'now SIGNAL ins_done0';
|
||||||
# session con1
|
|
||||||
connection con1;
|
connection con1;
|
||||||
ERROR 01000: Data truncated for column 'c3' at row 323
|
ERROR 01000: Data truncated for column 'c3' at row 323
|
||||||
# session default
|
|
||||||
connection default;
|
connection default;
|
||||||
ROLLBACK;
|
ROLLBACK;
|
||||||
# session con1
|
|
||||||
connection con1;
|
connection con1;
|
||||||
ALTER TABLE t1 MODIFY c3 CHAR(255) NOT NULL;
|
ALTER TABLE t1 MODIFY c3 CHAR(255) NOT NULL;
|
||||||
SET DEBUG_SYNC = 'row_log_table_apply1_before SIGNAL c3p5_created WAIT_FOR ins_done';
|
SET DEBUG_SYNC = 'row_log_table_apply1_before SIGNAL c3p5_created WAIT_FOR ins_done';
|
||||||
@ -426,14 +398,12 @@ ALTER TABLE t1 DROP PRIMARY KEY, DROP COLUMN c22f,
|
|||||||
ADD COLUMN c6 VARCHAR(1000) DEFAULT
|
ADD COLUMN c6 VARCHAR(1000) DEFAULT
|
||||||
'I love tracking down hard-to-reproduce bugs.',
|
'I love tracking down hard-to-reproduce bugs.',
|
||||||
ADD PRIMARY KEY c3p5(c3(5), c6(2));
|
ADD PRIMARY KEY c3p5(c3(5), c6(2));
|
||||||
# session default
|
|
||||||
connection default;
|
connection default;
|
||||||
SET DEBUG_SYNC = 'now WAIT_FOR c3p5_created';
|
SET DEBUG_SYNC = 'now WAIT_FOR c3p5_created';
|
||||||
SET DEBUG_SYNC = 'ib_after_row_insert SIGNAL ins_done WAIT_FOR ddl_timed_out';
|
SET DEBUG_SYNC = 'ib_after_row_insert SIGNAL ins_done WAIT_FOR ddl_timed_out';
|
||||||
INSERT INTO t1 VALUES(347,33101,NULL,'');
|
INSERT INTO t1 VALUES(347,33101,NULL,'');
|
||||||
ERROR 23000: Column 'c3' cannot be null
|
ERROR 23000: Column 'c3' cannot be null
|
||||||
INSERT INTO t1 VALUES(347,33101,'Pikku kakkosen posti','');
|
INSERT INTO t1 VALUES(347,33101,'Pikku kakkosen posti','');
|
||||||
# session con1
|
|
||||||
connection con1;
|
connection con1;
|
||||||
ERROR HY000: Lock wait timeout exceeded; try restarting transaction
|
ERROR HY000: Lock wait timeout exceeded; try restarting transaction
|
||||||
SET DEBUG_SYNC = 'now SIGNAL ddl_timed_out';
|
SET DEBUG_SYNC = 'now SIGNAL ddl_timed_out';
|
||||||
@ -445,7 +415,6 @@ ddl_online_create_index 0
|
|||||||
ddl_pending_alter_table 0
|
ddl_pending_alter_table 0
|
||||||
ddl_sort_file_alter_table 6
|
ddl_sort_file_alter_table 6
|
||||||
ddl_log_file_alter_table 2
|
ddl_log_file_alter_table 2
|
||||||
# session default
|
|
||||||
connection default;
|
connection default;
|
||||||
SELECT COUNT(*) FROM t1;
|
SELECT COUNT(*) FROM t1;
|
||||||
COUNT(*)
|
COUNT(*)
|
||||||
@ -463,12 +432,8 @@ c22f c1 c3 c4
|
|||||||
5 36 36foofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoo Online
|
5 36 36foofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoo Online
|
||||||
5 41 41foofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoo Online
|
5 41 41foofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoo Online
|
||||||
5 46 46foofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoo Online
|
5 46 46foofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoo Online
|
||||||
# session con1
|
|
||||||
connection con1;
|
connection con1;
|
||||||
ALTER TABLE t1 DISCARD TABLESPACE;
|
ALTER TABLE t1 DISCARD TABLESPACE;
|
||||||
# Disconnect session con1
|
|
||||||
disconnect con1;
|
|
||||||
# session default
|
|
||||||
connection default;
|
connection default;
|
||||||
SHOW CREATE TABLE t1;
|
SHOW CREATE TABLE t1;
|
||||||
Table Create Table
|
Table Create Table
|
||||||
@ -482,6 +447,23 @@ t1 CREATE TABLE `t1` (
|
|||||||
SET DEBUG_SYNC = 'RESET';
|
SET DEBUG_SYNC = 'RESET';
|
||||||
SET GLOBAL innodb_monitor_disable = module_ddl;
|
SET GLOBAL innodb_monitor_disable = module_ddl;
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
|
#
|
||||||
|
# MDEV-29600 Memory leak in row_log_table_apply_update()
|
||||||
|
#
|
||||||
|
CREATE TABLE t1 (pk INT PRIMARY KEY, f TEXT) ENGINE=InnoDB;
|
||||||
|
INSERT INTO t1 SET pk=1;
|
||||||
|
connection con1;
|
||||||
|
SET DEBUG_SYNC = 'row_log_table_apply1_before SIGNAL created WAIT_FOR updated';
|
||||||
|
ALTER TABLE t1 FORCE;
|
||||||
|
connection default;
|
||||||
|
SET DEBUG_SYNC = 'now WAIT_FOR created';
|
||||||
|
UPDATE t1 SET f = REPEAT('a', 20000);
|
||||||
|
SET DEBUG_SYNC = 'now SIGNAL updated';
|
||||||
|
connection con1;
|
||||||
|
disconnect con1;
|
||||||
|
connection default;
|
||||||
|
DROP TABLE t1;
|
||||||
|
SET DEBUG_SYNC = 'RESET';
|
||||||
SET GLOBAL innodb_file_per_table = @global_innodb_file_per_table_orig;
|
SET GLOBAL innodb_file_per_table = @global_innodb_file_per_table_orig;
|
||||||
SET GLOBAL innodb_monitor_enable = default;
|
SET GLOBAL innodb_monitor_enable = default;
|
||||||
SET GLOBAL innodb_monitor_disable = default;
|
SET GLOBAL innodb_monitor_disable = default;
|
||||||
|
@ -30,9 +30,7 @@ SET DEBUG_SYNC = 'write_row_noreplace SIGNAL have_handle WAIT_FOR go_ahead';
|
|||||||
--send
|
--send
|
||||||
INSERT INTO t1 VALUES(1,2,3);
|
INSERT INTO t1 VALUES(1,2,3);
|
||||||
|
|
||||||
--echo # Establish session con1 (user=root)
|
|
||||||
connect (con1,localhost,root,,);
|
connect (con1,localhost,root,,);
|
||||||
connection con1;
|
|
||||||
|
|
||||||
# This should block at the end because of the INSERT in connection default
|
# This should block at the end because of the INSERT in connection default
|
||||||
# is holding a metadata lock.
|
# is holding a metadata lock.
|
||||||
@ -42,13 +40,11 @@ SET lock_wait_timeout = 1;
|
|||||||
ALTER TABLE t1 ROW_FORMAT=REDUNDANT;
|
ALTER TABLE t1 ROW_FORMAT=REDUNDANT;
|
||||||
SET DEBUG_SYNC = 'now SIGNAL go_ahead';
|
SET DEBUG_SYNC = 'now SIGNAL go_ahead';
|
||||||
|
|
||||||
--echo # session default
|
|
||||||
connection default;
|
connection default;
|
||||||
--error ER_DUP_ENTRY
|
--error ER_DUP_ENTRY
|
||||||
reap;
|
reap;
|
||||||
eval $innodb_metrics_select;
|
eval $innodb_metrics_select;
|
||||||
|
|
||||||
--echo # session con1
|
|
||||||
connection con1;
|
connection con1;
|
||||||
SET @saved_debug_dbug = @@SESSION.debug_dbug;
|
SET @saved_debug_dbug = @@SESSION.debug_dbug;
|
||||||
SET DEBUG_DBUG = '+d,innodb_OOM_prepare_inplace_alter';
|
SET DEBUG_DBUG = '+d,innodb_OOM_prepare_inplace_alter';
|
||||||
@ -61,14 +57,12 @@ ALTER TABLE t1 ROW_FORMAT=REDUNDANT, ALGORITHM=INPLACE, LOCK=NONE;
|
|||||||
SET SESSION DEBUG = @saved_debug_dbug;
|
SET SESSION DEBUG = @saved_debug_dbug;
|
||||||
ALTER TABLE t1 ROW_FORMAT=REDUNDANT, ALGORITHM=INPLACE, LOCK=NONE;
|
ALTER TABLE t1 ROW_FORMAT=REDUNDANT, ALGORITHM=INPLACE, LOCK=NONE;
|
||||||
|
|
||||||
--echo # session default
|
|
||||||
connection default;
|
connection default;
|
||||||
SHOW CREATE TABLE t1;
|
SHOW CREATE TABLE t1;
|
||||||
# Insert a duplicate entry (4) for the upcoming UNIQUE INDEX(c2).
|
# Insert a duplicate entry (4) for the upcoming UNIQUE INDEX(c2).
|
||||||
BEGIN;
|
BEGIN;
|
||||||
INSERT INTO t1 VALUES(7,4,2);
|
INSERT INTO t1 VALUES(7,4,2);
|
||||||
|
|
||||||
--echo # session con1
|
|
||||||
connection con1;
|
connection con1;
|
||||||
# This DEBUG_SYNC should not kick in yet, because the duplicate key will be
|
# This DEBUG_SYNC should not kick in yet, because the duplicate key will be
|
||||||
# detected before we get a chance to apply the online log.
|
# detected before we get a chance to apply the online log.
|
||||||
@ -78,20 +72,16 @@ SET DEBUG_SYNC = 'row_log_table_apply1_before SIGNAL scanned WAIT_FOR insert_don
|
|||||||
--error ER_LOCK_WAIT_TIMEOUT
|
--error ER_LOCK_WAIT_TIMEOUT
|
||||||
ALTER TABLE t1 DROP PRIMARY KEY, ADD UNIQUE INDEX(c2);
|
ALTER TABLE t1 DROP PRIMARY KEY, ADD UNIQUE INDEX(c2);
|
||||||
|
|
||||||
--echo # session default
|
|
||||||
connection default;
|
connection default;
|
||||||
COMMIT;
|
COMMIT;
|
||||||
|
|
||||||
--echo # session con1
|
|
||||||
connection con1;
|
connection con1;
|
||||||
--error ER_DUP_ENTRY
|
--error ER_DUP_ENTRY
|
||||||
ALTER TABLE t1 DROP PRIMARY KEY, ADD UNIQUE INDEX(c2);
|
ALTER TABLE t1 DROP PRIMARY KEY, ADD UNIQUE INDEX(c2);
|
||||||
|
|
||||||
--echo # session default
|
|
||||||
connection default;
|
connection default;
|
||||||
DELETE FROM t1 WHERE c1 = 7;
|
DELETE FROM t1 WHERE c1 = 7;
|
||||||
|
|
||||||
--echo # session con1
|
|
||||||
connection con1;
|
connection con1;
|
||||||
ALTER TABLE t1 DROP PRIMARY KEY, ADD UNIQUE INDEX(c2), ROW_FORMAT=COMPACT,
|
ALTER TABLE t1 DROP PRIMARY KEY, ADD UNIQUE INDEX(c2), ROW_FORMAT=COMPACT,
|
||||||
LOCK = SHARED, ALGORITHM = INPLACE;
|
LOCK = SHARED, ALGORITHM = INPLACE;
|
||||||
@ -106,7 +96,6 @@ SHOW CREATE TABLE t1;
|
|||||||
--send
|
--send
|
||||||
ALTER TABLE t1 DROP INDEX c2, ADD PRIMARY KEY(c1);
|
ALTER TABLE t1 DROP INDEX c2, ADD PRIMARY KEY(c1);
|
||||||
|
|
||||||
--echo # session default
|
|
||||||
connection default;
|
connection default;
|
||||||
SET DEBUG_SYNC = 'now WAIT_FOR scanned';
|
SET DEBUG_SYNC = 'now WAIT_FOR scanned';
|
||||||
eval $innodb_metrics_select;
|
eval $innodb_metrics_select;
|
||||||
@ -116,7 +105,6 @@ BEGIN;
|
|||||||
INSERT INTO t1 VALUES(4,7,2);
|
INSERT INTO t1 VALUES(4,7,2);
|
||||||
SET DEBUG_SYNC = 'now SIGNAL insert_done';
|
SET DEBUG_SYNC = 'now SIGNAL insert_done';
|
||||||
|
|
||||||
--echo # session con1
|
|
||||||
connection con1;
|
connection con1;
|
||||||
# Because the modification log will be applied in order and we did
|
# Because the modification log will be applied in order and we did
|
||||||
# not roll back before the log apply, there will be a duplicate key
|
# not roll back before the log apply, there will be a duplicate key
|
||||||
@ -124,11 +112,9 @@ connection con1;
|
|||||||
--error ER_DUP_ENTRY
|
--error ER_DUP_ENTRY
|
||||||
reap;
|
reap;
|
||||||
|
|
||||||
--echo # session default
|
|
||||||
connection default;
|
connection default;
|
||||||
ROLLBACK;
|
ROLLBACK;
|
||||||
|
|
||||||
--echo # session con1
|
|
||||||
connection con1;
|
connection con1;
|
||||||
SHOW CREATE TABLE t1;
|
SHOW CREATE TABLE t1;
|
||||||
# Now, rebuild the table without any concurrent DML, while no duplicate exists.
|
# Now, rebuild the table without any concurrent DML, while no duplicate exists.
|
||||||
@ -137,7 +123,6 @@ ALTER TABLE t1 DROP PRIMARY KEY, ADD UNIQUE INDEX(c2), ALGORITHM = INPLACE;
|
|||||||
ALTER TABLE t1 DROP INDEX c2, ADD PRIMARY KEY(c1), ALGORITHM = INPLACE;
|
ALTER TABLE t1 DROP INDEX c2, ADD PRIMARY KEY(c1), ALGORITHM = INPLACE;
|
||||||
eval $innodb_metrics_select;
|
eval $innodb_metrics_select;
|
||||||
|
|
||||||
--echo # session default
|
|
||||||
connection default;
|
connection default;
|
||||||
--error ER_DUP_ENTRY
|
--error ER_DUP_ENTRY
|
||||||
INSERT INTO t1 VALUES(6,3,1);
|
INSERT INTO t1 VALUES(6,3,1);
|
||||||
@ -148,7 +133,6 @@ BEGIN;
|
|||||||
INSERT INTO t1 VALUES(7,4,2);
|
INSERT INTO t1 VALUES(7,4,2);
|
||||||
ROLLBACK;
|
ROLLBACK;
|
||||||
|
|
||||||
--echo # session con1
|
|
||||||
connection con1;
|
connection con1;
|
||||||
let $ID= `SELECT @id := CONNECTION_ID()`;
|
let $ID= `SELECT @id := CONNECTION_ID()`;
|
||||||
--error ER_QUERY_INTERRUPTED
|
--error ER_QUERY_INTERRUPTED
|
||||||
@ -159,7 +143,6 @@ SET DEBUG_SYNC = 'row_log_table_apply2_before SIGNAL applied WAIT_FOR kill_done'
|
|||||||
--send
|
--send
|
||||||
ALTER TABLE t1 ROW_FORMAT=REDUNDANT;
|
ALTER TABLE t1 ROW_FORMAT=REDUNDANT;
|
||||||
|
|
||||||
--echo # session default
|
|
||||||
connection default;
|
connection default;
|
||||||
SET DEBUG_SYNC = 'now WAIT_FOR rebuilt';
|
SET DEBUG_SYNC = 'now WAIT_FOR rebuilt';
|
||||||
eval $innodb_metrics_select;
|
eval $innodb_metrics_select;
|
||||||
@ -171,13 +154,11 @@ let $ignore= `SELECT @id := $ID`;
|
|||||||
KILL QUERY @id;
|
KILL QUERY @id;
|
||||||
SET DEBUG_SYNC = 'now SIGNAL kill_done';
|
SET DEBUG_SYNC = 'now SIGNAL kill_done';
|
||||||
|
|
||||||
--echo # session con1
|
|
||||||
connection con1;
|
connection con1;
|
||||||
--error ER_QUERY_INTERRUPTED
|
--error ER_QUERY_INTERRUPTED
|
||||||
reap;
|
reap;
|
||||||
eval $innodb_metrics_select;
|
eval $innodb_metrics_select;
|
||||||
|
|
||||||
--echo # session default
|
|
||||||
connection default;
|
connection default;
|
||||||
CHECK TABLE t1;
|
CHECK TABLE t1;
|
||||||
INSERT INTO t1 SELECT 5 + c1, c2, c3 FROM t1;
|
INSERT INTO t1 SELECT 5 + c1, c2, c3 FROM t1;
|
||||||
@ -199,7 +180,6 @@ SET @rowlog_encrypt_0=
|
|||||||
(SELECT variable_value FROM information_schema.global_status
|
(SELECT variable_value FROM information_schema.global_status
|
||||||
WHERE variable_name = 'innodb_encryption_n_rowlog_blocks_encrypted');
|
WHERE variable_name = 'innodb_encryption_n_rowlog_blocks_encrypted');
|
||||||
|
|
||||||
--echo # session con1
|
|
||||||
connection con1;
|
connection con1;
|
||||||
SHOW CREATE TABLE t1;
|
SHOW CREATE TABLE t1;
|
||||||
ALTER TABLE t1 ROW_FORMAT=REDUNDANT;
|
ALTER TABLE t1 ROW_FORMAT=REDUNDANT;
|
||||||
@ -217,7 +197,6 @@ PAGE_COMPRESSED = YES PAGE_COMPRESSION_LEVEL = 1, ALGORITHM = INPLACE;
|
|||||||
# Generate some log (delete-mark, delete-unmark, insert etc.)
|
# Generate some log (delete-mark, delete-unmark, insert etc.)
|
||||||
# while the index creation is blocked. Some of this may run
|
# while the index creation is blocked. Some of this may run
|
||||||
# in parallel with the clustered index scan.
|
# in parallel with the clustered index scan.
|
||||||
--echo # session default
|
|
||||||
connection default;
|
connection default;
|
||||||
INSERT INTO t1 SELECT 80 + c1, c2, c3 FROM t1;
|
INSERT INTO t1 SELECT 80 + c1, c2, c3 FROM t1;
|
||||||
INSERT INTO t1 SELECT 160 + c1, c2, c3 FROM t1;
|
INSERT INTO t1 SELECT 160 + c1, c2, c3 FROM t1;
|
||||||
@ -261,7 +240,6 @@ SELECT
|
|||||||
# Release con1.
|
# Release con1.
|
||||||
SET DEBUG_SYNC = 'now SIGNAL dml2_done';
|
SET DEBUG_SYNC = 'now SIGNAL dml2_done';
|
||||||
|
|
||||||
--echo # session con1
|
|
||||||
connection con1;
|
connection con1;
|
||||||
# If the following fails with the wrong error, it probably means that
|
# If the following fails with the wrong error, it probably means that
|
||||||
# you should rerun with a larger mtr --debug-sync-timeout.
|
# you should rerun with a larger mtr --debug-sync-timeout.
|
||||||
@ -295,7 +273,6 @@ ALTER TABLE t1 DROP PRIMARY KEY, ADD PRIMARY KEY(c22f,c1,c4(5)),
|
|||||||
CHANGE c2 c22f INT, CHANGE c3 c3 CHAR(255) NULL, CHANGE c1 c1 INT AFTER c22f,
|
CHANGE c2 c22f INT, CHANGE c3 c3 CHAR(255) NULL, CHANGE c1 c1 INT AFTER c22f,
|
||||||
ADD COLUMN c4 VARCHAR(6) DEFAULT 'Online', LOCK=NONE;
|
ADD COLUMN c4 VARCHAR(6) DEFAULT 'Online', LOCK=NONE;
|
||||||
|
|
||||||
--echo # session default
|
|
||||||
connection default;
|
connection default;
|
||||||
SET DEBUG_SYNC = 'now WAIT_FOR rebuilt3';
|
SET DEBUG_SYNC = 'now WAIT_FOR rebuilt3';
|
||||||
# Generate some log (delete-mark, delete-unmark, insert etc.)
|
# Generate some log (delete-mark, delete-unmark, insert etc.)
|
||||||
@ -312,7 +289,6 @@ eval $innodb_metrics_select;
|
|||||||
# Release con1.
|
# Release con1.
|
||||||
SET DEBUG_SYNC = 'now SIGNAL dml3_done';
|
SET DEBUG_SYNC = 'now SIGNAL dml3_done';
|
||||||
|
|
||||||
--echo # session con1
|
|
||||||
connection con1;
|
connection con1;
|
||||||
reap;
|
reap;
|
||||||
eval $innodb_metrics_select;
|
eval $innodb_metrics_select;
|
||||||
@ -365,7 +341,6 @@ ALTER TABLE t1 MODIFY c3 CHAR(255) NOT NULL, DROP COLUMN c22f,
|
|||||||
DROP PRIMARY KEY, ADD PRIMARY KEY(c1,c4(5)),
|
DROP PRIMARY KEY, ADD PRIMARY KEY(c1,c4(5)),
|
||||||
ADD COLUMN c5 CHAR(5) DEFAULT 'tired' FIRST;
|
ADD COLUMN c5 CHAR(5) DEFAULT 'tired' FIRST;
|
||||||
|
|
||||||
--echo # session default
|
|
||||||
connection default;
|
connection default;
|
||||||
|
|
||||||
SET DEBUG_SYNC = 'now WAIT_FOR c3p5_created0';
|
SET DEBUG_SYNC = 'now WAIT_FOR c3p5_created0';
|
||||||
@ -374,16 +349,13 @@ INSERT INTO t1 VALUES(347,33101,'Pikku kakkosen posti','YLETV2');
|
|||||||
INSERT INTO t1 VALUES(33101,347,NULL,'');
|
INSERT INTO t1 VALUES(33101,347,NULL,'');
|
||||||
SET DEBUG_SYNC = 'now SIGNAL ins_done0';
|
SET DEBUG_SYNC = 'now SIGNAL ins_done0';
|
||||||
|
|
||||||
--echo # session con1
|
|
||||||
connection con1;
|
connection con1;
|
||||||
--error WARN_DATA_TRUNCATED
|
--error WARN_DATA_TRUNCATED
|
||||||
reap;
|
reap;
|
||||||
|
|
||||||
--echo # session default
|
|
||||||
connection default;
|
connection default;
|
||||||
ROLLBACK;
|
ROLLBACK;
|
||||||
|
|
||||||
--echo # session con1
|
|
||||||
connection con1;
|
connection con1;
|
||||||
ALTER TABLE t1 MODIFY c3 CHAR(255) NOT NULL;
|
ALTER TABLE t1 MODIFY c3 CHAR(255) NOT NULL;
|
||||||
|
|
||||||
@ -394,7 +366,6 @@ ADD COLUMN c6 VARCHAR(1000) DEFAULT
|
|||||||
'I love tracking down hard-to-reproduce bugs.',
|
'I love tracking down hard-to-reproduce bugs.',
|
||||||
ADD PRIMARY KEY c3p5(c3(5), c6(2));
|
ADD PRIMARY KEY c3p5(c3(5), c6(2));
|
||||||
|
|
||||||
--echo # session default
|
|
||||||
connection default;
|
connection default;
|
||||||
SET DEBUG_SYNC = 'now WAIT_FOR c3p5_created';
|
SET DEBUG_SYNC = 'now WAIT_FOR c3p5_created';
|
||||||
SET DEBUG_SYNC = 'ib_after_row_insert SIGNAL ins_done WAIT_FOR ddl_timed_out';
|
SET DEBUG_SYNC = 'ib_after_row_insert SIGNAL ins_done WAIT_FOR ddl_timed_out';
|
||||||
@ -403,33 +374,51 @@ INSERT INTO t1 VALUES(347,33101,NULL,'');
|
|||||||
--send
|
--send
|
||||||
INSERT INTO t1 VALUES(347,33101,'Pikku kakkosen posti','');
|
INSERT INTO t1 VALUES(347,33101,'Pikku kakkosen posti','');
|
||||||
|
|
||||||
--echo # session con1
|
|
||||||
connection con1;
|
connection con1;
|
||||||
--error ER_LOCK_WAIT_TIMEOUT
|
--error ER_LOCK_WAIT_TIMEOUT
|
||||||
reap;
|
reap;
|
||||||
SET DEBUG_SYNC = 'now SIGNAL ddl_timed_out';
|
SET DEBUG_SYNC = 'now SIGNAL ddl_timed_out';
|
||||||
eval $innodb_metrics_select;
|
eval $innodb_metrics_select;
|
||||||
|
|
||||||
--echo # session default
|
|
||||||
connection default;
|
connection default;
|
||||||
reap;
|
reap;
|
||||||
SELECT COUNT(*) FROM t1;
|
SELECT COUNT(*) FROM t1;
|
||||||
ALTER TABLE t1 ROW_FORMAT=REDUNDANT;
|
ALTER TABLE t1 ROW_FORMAT=REDUNDANT;
|
||||||
SELECT * FROM t1 LIMIT 10;
|
SELECT * FROM t1 LIMIT 10;
|
||||||
|
|
||||||
--echo # session con1
|
|
||||||
connection con1;
|
connection con1;
|
||||||
ALTER TABLE t1 DISCARD TABLESPACE;
|
ALTER TABLE t1 DISCARD TABLESPACE;
|
||||||
--echo # Disconnect session con1
|
|
||||||
disconnect con1;
|
|
||||||
|
|
||||||
--echo # session default
|
|
||||||
connection default;
|
connection default;
|
||||||
SHOW CREATE TABLE t1;
|
SHOW CREATE TABLE t1;
|
||||||
SET DEBUG_SYNC = 'RESET';
|
SET DEBUG_SYNC = 'RESET';
|
||||||
SET GLOBAL innodb_monitor_disable = module_ddl;
|
SET GLOBAL innodb_monitor_disable = module_ddl;
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
|
|
||||||
|
--echo #
|
||||||
|
--echo # MDEV-29600 Memory leak in row_log_table_apply_update()
|
||||||
|
--echo #
|
||||||
|
|
||||||
|
CREATE TABLE t1 (pk INT PRIMARY KEY, f TEXT) ENGINE=InnoDB;
|
||||||
|
INSERT INTO t1 SET pk=1;
|
||||||
|
|
||||||
|
connection con1;
|
||||||
|
SET DEBUG_SYNC = 'row_log_table_apply1_before SIGNAL created WAIT_FOR updated';
|
||||||
|
send ALTER TABLE t1 FORCE;
|
||||||
|
|
||||||
|
connection default;
|
||||||
|
SET DEBUG_SYNC = 'now WAIT_FOR created';
|
||||||
|
UPDATE t1 SET f = REPEAT('a', 20000);
|
||||||
|
SET DEBUG_SYNC = 'now SIGNAL updated';
|
||||||
|
|
||||||
|
connection con1;
|
||||||
|
reap;
|
||||||
|
disconnect con1;
|
||||||
|
|
||||||
|
connection default;
|
||||||
|
DROP TABLE t1;
|
||||||
|
SET DEBUG_SYNC = 'RESET';
|
||||||
|
|
||||||
# Check that all connections opened by test cases in this file are really
|
# Check that all connections opened by test cases in this file are really
|
||||||
# gone so execution of other tests won't be affected by their presence.
|
# gone so execution of other tests won't be affected by their presence.
|
||||||
--source include/wait_until_count_sessions.inc
|
--source include/wait_until_count_sessions.inc
|
||||||
|
File diff suppressed because it is too large
Load Diff
767
mysql-test/suite/rpl/r/rpl_row_img_sequence_full.result
Normal file
767
mysql-test/suite/rpl/r/rpl_row_img_sequence_full.result
Normal file
@ -0,0 +1,767 @@
|
|||||||
|
include/rpl_init.inc [topology=1->2->3]
|
||||||
|
connection server_1;
|
||||||
|
connection server_2;
|
||||||
|
connection server_3;
|
||||||
|
connection server_1;
|
||||||
|
#
|
||||||
|
# binlog_row_image=FULL should write all columns to the binary log
|
||||||
|
#
|
||||||
|
CON: 'server_1', IMG: 'FULL', RESTART SLAVE: 'N'
|
||||||
|
connection server_1;
|
||||||
|
SET SESSION binlog_row_image= 'FULL';
|
||||||
|
SET GLOBAL binlog_row_image= 'FULL';
|
||||||
|
FLUSH TABLES;
|
||||||
|
SHOW VARIABLES LIKE 'binlog_row_image';
|
||||||
|
Variable_name Value
|
||||||
|
binlog_row_image FULL
|
||||||
|
CON: 'server_2', IMG: 'FULL', RESTART SLAVE: 'Y'
|
||||||
|
connection server_2;
|
||||||
|
SET SESSION binlog_row_image= 'FULL';
|
||||||
|
SET GLOBAL binlog_row_image= 'FULL';
|
||||||
|
include/stop_slave.inc
|
||||||
|
include/start_slave.inc
|
||||||
|
FLUSH TABLES;
|
||||||
|
SHOW VARIABLES LIKE 'binlog_row_image';
|
||||||
|
Variable_name Value
|
||||||
|
binlog_row_image FULL
|
||||||
|
CON: 'server_3', IMG: 'FULL', RESTART SLAVE: 'Y'
|
||||||
|
connection server_3;
|
||||||
|
SET SESSION binlog_row_image= 'FULL';
|
||||||
|
SET GLOBAL binlog_row_image= 'FULL';
|
||||||
|
include/stop_slave.inc
|
||||||
|
include/start_slave.inc
|
||||||
|
FLUSH TABLES;
|
||||||
|
SHOW VARIABLES LIKE 'binlog_row_image';
|
||||||
|
Variable_name Value
|
||||||
|
binlog_row_image FULL
|
||||||
|
connection server_1;
|
||||||
|
### engines: MyISAM, MyISAM, MyISAM
|
||||||
|
# Create sequences with specific engines per server
|
||||||
|
connection server_1;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=MyISAM;
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
connection server_2;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=MyISAM;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
connection server_3;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=MyISAM;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
# Pt.1 Ensure SETVAL replicates and binlogs correctly
|
||||||
|
connection server_1;
|
||||||
|
SELECT SETVAL(s1, 10);
|
||||||
|
SETVAL(s1, 10)
|
||||||
|
10
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
# Validate SETVAL replicated correctly to other servers
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
include/diff_tables.inc [server_1:test.s1,server_2:test.s1,server_3:test.s1]
|
||||||
|
# Validate server_1 binlogged SETVAL with the correct columns
|
||||||
|
connection server_1;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_2 binlogged SETVAL with the correct columns
|
||||||
|
connection server_2;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_3 binlogged SETVAL with the correct columns
|
||||||
|
connection server_3;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Pt.2 Ensure NEXTVAL replicates and binlogs correctly
|
||||||
|
connection server_1;
|
||||||
|
SELECT NEXTVAL(s1);
|
||||||
|
NEXTVAL(s1)
|
||||||
|
11
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
# Validate NEXTVAL replicated correctly to other servers
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
include/diff_tables.inc [server_1:test.s1,server_2:test.s1,server_3:test.s1]
|
||||||
|
# Validate server_1 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_1;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_2 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_2;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_3 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_3;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Cleanup
|
||||||
|
connection server_1;
|
||||||
|
DROP TABLE s1;
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
### engines: MyISAM, MyISAM, InnoDB
|
||||||
|
# Create sequences with specific engines per server
|
||||||
|
connection server_1;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=MyISAM;
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
connection server_2;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=MyISAM;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
connection server_3;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=InnoDB;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
# Pt.1 Ensure SETVAL replicates and binlogs correctly
|
||||||
|
connection server_1;
|
||||||
|
SELECT SETVAL(s1, 10);
|
||||||
|
SETVAL(s1, 10)
|
||||||
|
10
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
# Validate SETVAL replicated correctly to other servers
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
include/diff_tables.inc [server_1:test.s1,server_2:test.s1,server_3:test.s1]
|
||||||
|
# Validate server_1 binlogged SETVAL with the correct columns
|
||||||
|
connection server_1;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_2 binlogged SETVAL with the correct columns
|
||||||
|
connection server_2;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_3 binlogged SETVAL with the correct columns
|
||||||
|
connection server_3;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Pt.2 Ensure NEXTVAL replicates and binlogs correctly
|
||||||
|
connection server_1;
|
||||||
|
SELECT NEXTVAL(s1);
|
||||||
|
NEXTVAL(s1)
|
||||||
|
11
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
# Validate NEXTVAL replicated correctly to other servers
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
include/diff_tables.inc [server_1:test.s1,server_2:test.s1,server_3:test.s1]
|
||||||
|
# Validate server_1 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_1;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_2 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_2;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_3 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_3;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Cleanup
|
||||||
|
connection server_1;
|
||||||
|
DROP TABLE s1;
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
### engines: MyISAM, InnoDB, MyISAM
|
||||||
|
# Create sequences with specific engines per server
|
||||||
|
connection server_1;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=MyISAM;
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
connection server_2;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=InnoDB;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
connection server_3;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=MyISAM;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
# Pt.1 Ensure SETVAL replicates and binlogs correctly
|
||||||
|
connection server_1;
|
||||||
|
SELECT SETVAL(s1, 10);
|
||||||
|
SETVAL(s1, 10)
|
||||||
|
10
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
# Validate SETVAL replicated correctly to other servers
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
include/diff_tables.inc [server_1:test.s1,server_2:test.s1,server_3:test.s1]
|
||||||
|
# Validate server_1 binlogged SETVAL with the correct columns
|
||||||
|
connection server_1;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_2 binlogged SETVAL with the correct columns
|
||||||
|
connection server_2;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_3 binlogged SETVAL with the correct columns
|
||||||
|
connection server_3;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Pt.2 Ensure NEXTVAL replicates and binlogs correctly
|
||||||
|
connection server_1;
|
||||||
|
SELECT NEXTVAL(s1);
|
||||||
|
NEXTVAL(s1)
|
||||||
|
11
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
# Validate NEXTVAL replicated correctly to other servers
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
include/diff_tables.inc [server_1:test.s1,server_2:test.s1,server_3:test.s1]
|
||||||
|
# Validate server_1 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_1;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_2 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_2;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_3 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_3;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Cleanup
|
||||||
|
connection server_1;
|
||||||
|
DROP TABLE s1;
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
### engines: MyISAM, InnoDB, InnoDB
|
||||||
|
# Create sequences with specific engines per server
|
||||||
|
connection server_1;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=MyISAM;
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
connection server_2;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=InnoDB;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
connection server_3;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=InnoDB;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
# Pt.1 Ensure SETVAL replicates and binlogs correctly
|
||||||
|
connection server_1;
|
||||||
|
SELECT SETVAL(s1, 10);
|
||||||
|
SETVAL(s1, 10)
|
||||||
|
10
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
# Validate SETVAL replicated correctly to other servers
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
include/diff_tables.inc [server_1:test.s1,server_2:test.s1,server_3:test.s1]
|
||||||
|
# Validate server_1 binlogged SETVAL with the correct columns
|
||||||
|
connection server_1;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_2 binlogged SETVAL with the correct columns
|
||||||
|
connection server_2;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_3 binlogged SETVAL with the correct columns
|
||||||
|
connection server_3;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Pt.2 Ensure NEXTVAL replicates and binlogs correctly
|
||||||
|
connection server_1;
|
||||||
|
SELECT NEXTVAL(s1);
|
||||||
|
NEXTVAL(s1)
|
||||||
|
11
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
# Validate NEXTVAL replicated correctly to other servers
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
include/diff_tables.inc [server_1:test.s1,server_2:test.s1,server_3:test.s1]
|
||||||
|
# Validate server_1 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_1;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_2 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_2;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_3 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_3;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Cleanup
|
||||||
|
connection server_1;
|
||||||
|
DROP TABLE s1;
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
### engines: InnoDB, MyISAM, MyISAM
|
||||||
|
# Create sequences with specific engines per server
|
||||||
|
connection server_1;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=InnoDB;
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
connection server_2;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=MyISAM;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
connection server_3;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=MyISAM;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
# Pt.1 Ensure SETVAL replicates and binlogs correctly
|
||||||
|
connection server_1;
|
||||||
|
SELECT SETVAL(s1, 10);
|
||||||
|
SETVAL(s1, 10)
|
||||||
|
10
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
# Validate SETVAL replicated correctly to other servers
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
include/diff_tables.inc [server_1:test.s1,server_2:test.s1,server_3:test.s1]
|
||||||
|
# Validate server_1 binlogged SETVAL with the correct columns
|
||||||
|
connection server_1;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_2 binlogged SETVAL with the correct columns
|
||||||
|
connection server_2;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_3 binlogged SETVAL with the correct columns
|
||||||
|
connection server_3;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Pt.2 Ensure NEXTVAL replicates and binlogs correctly
|
||||||
|
connection server_1;
|
||||||
|
SELECT NEXTVAL(s1);
|
||||||
|
NEXTVAL(s1)
|
||||||
|
11
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
# Validate NEXTVAL replicated correctly to other servers
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
include/diff_tables.inc [server_1:test.s1,server_2:test.s1,server_3:test.s1]
|
||||||
|
# Validate server_1 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_1;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_2 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_2;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_3 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_3;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Cleanup
|
||||||
|
connection server_1;
|
||||||
|
DROP TABLE s1;
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
### engines: InnoDB, MyISAM, InnoDB
|
||||||
|
# Create sequences with specific engines per server
|
||||||
|
connection server_1;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=InnoDB;
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
connection server_2;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=MyISAM;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
connection server_3;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=InnoDB;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
# Pt.1 Ensure SETVAL replicates and binlogs correctly
|
||||||
|
connection server_1;
|
||||||
|
SELECT SETVAL(s1, 10);
|
||||||
|
SETVAL(s1, 10)
|
||||||
|
10
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
# Validate SETVAL replicated correctly to other servers
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
include/diff_tables.inc [server_1:test.s1,server_2:test.s1,server_3:test.s1]
|
||||||
|
# Validate server_1 binlogged SETVAL with the correct columns
|
||||||
|
connection server_1;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_2 binlogged SETVAL with the correct columns
|
||||||
|
connection server_2;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_3 binlogged SETVAL with the correct columns
|
||||||
|
connection server_3;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Pt.2 Ensure NEXTVAL replicates and binlogs correctly
|
||||||
|
connection server_1;
|
||||||
|
SELECT NEXTVAL(s1);
|
||||||
|
NEXTVAL(s1)
|
||||||
|
11
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
# Validate NEXTVAL replicated correctly to other servers
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
include/diff_tables.inc [server_1:test.s1,server_2:test.s1,server_3:test.s1]
|
||||||
|
# Validate server_1 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_1;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_2 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_2;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_3 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_3;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Cleanup
|
||||||
|
connection server_1;
|
||||||
|
DROP TABLE s1;
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
### engines: InnoDB, InnoDB, MyISAM
|
||||||
|
# Create sequences with specific engines per server
|
||||||
|
connection server_1;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=InnoDB;
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
connection server_2;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=InnoDB;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
connection server_3;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=MyISAM;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
# Pt.1 Ensure SETVAL replicates and binlogs correctly
|
||||||
|
connection server_1;
|
||||||
|
SELECT SETVAL(s1, 10);
|
||||||
|
SETVAL(s1, 10)
|
||||||
|
10
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
# Validate SETVAL replicated correctly to other servers
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
include/diff_tables.inc [server_1:test.s1,server_2:test.s1,server_3:test.s1]
|
||||||
|
# Validate server_1 binlogged SETVAL with the correct columns
|
||||||
|
connection server_1;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_2 binlogged SETVAL with the correct columns
|
||||||
|
connection server_2;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_3 binlogged SETVAL with the correct columns
|
||||||
|
connection server_3;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Pt.2 Ensure NEXTVAL replicates and binlogs correctly
|
||||||
|
connection server_1;
|
||||||
|
SELECT NEXTVAL(s1);
|
||||||
|
NEXTVAL(s1)
|
||||||
|
11
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
# Validate NEXTVAL replicated correctly to other servers
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
include/diff_tables.inc [server_1:test.s1,server_2:test.s1,server_3:test.s1]
|
||||||
|
# Validate server_1 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_1;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_2 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_2;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_3 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_3;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Cleanup
|
||||||
|
connection server_1;
|
||||||
|
DROP TABLE s1;
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
### engines: InnoDB, InnoDB, InnoDB
|
||||||
|
# Create sequences with specific engines per server
|
||||||
|
connection server_1;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=InnoDB;
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
connection server_2;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=InnoDB;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
connection server_3;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=InnoDB;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
# Pt.1 Ensure SETVAL replicates and binlogs correctly
|
||||||
|
connection server_1;
|
||||||
|
SELECT SETVAL(s1, 10);
|
||||||
|
SETVAL(s1, 10)
|
||||||
|
10
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
# Validate SETVAL replicated correctly to other servers
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
include/diff_tables.inc [server_1:test.s1,server_2:test.s1,server_3:test.s1]
|
||||||
|
# Validate server_1 binlogged SETVAL with the correct columns
|
||||||
|
connection server_1;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_2 binlogged SETVAL with the correct columns
|
||||||
|
connection server_2;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_3 binlogged SETVAL with the correct columns
|
||||||
|
connection server_3;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Pt.2 Ensure NEXTVAL replicates and binlogs correctly
|
||||||
|
connection server_1;
|
||||||
|
SELECT NEXTVAL(s1);
|
||||||
|
NEXTVAL(s1)
|
||||||
|
11
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
# Validate NEXTVAL replicated correctly to other servers
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
include/diff_tables.inc [server_1:test.s1,server_2:test.s1,server_3:test.s1]
|
||||||
|
# Validate server_1 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_1;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_2 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_2;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_3 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_3;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Cleanup
|
||||||
|
connection server_1;
|
||||||
|
DROP TABLE s1;
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
include/rpl_end.inc
|
||||||
|
# End of tests
|
797
mysql-test/suite/rpl/r/rpl_row_img_sequence_min.result
Normal file
797
mysql-test/suite/rpl/r/rpl_row_img_sequence_min.result
Normal file
@ -0,0 +1,797 @@
|
|||||||
|
include/rpl_init.inc [topology=1->2->3]
|
||||||
|
connection server_1;
|
||||||
|
connection server_2;
|
||||||
|
connection server_3;
|
||||||
|
connection server_1;
|
||||||
|
#
|
||||||
|
# binlog_row_image=MINIMAL should write only columns 1 and 8 to the
|
||||||
|
# binary log
|
||||||
|
#
|
||||||
|
CON: 'server_1', IMG: 'MINIMAL', RESTART SLAVE: 'N'
|
||||||
|
connection server_1;
|
||||||
|
SET SESSION binlog_row_image= 'MINIMAL';
|
||||||
|
SET GLOBAL binlog_row_image= 'MINIMAL';
|
||||||
|
FLUSH TABLES;
|
||||||
|
SHOW VARIABLES LIKE 'binlog_row_image';
|
||||||
|
Variable_name Value
|
||||||
|
binlog_row_image MINIMAL
|
||||||
|
CON: 'server_2', IMG: 'MINIMAL', RESTART SLAVE: 'Y'
|
||||||
|
connection server_2;
|
||||||
|
SET SESSION binlog_row_image= 'MINIMAL';
|
||||||
|
SET GLOBAL binlog_row_image= 'MINIMAL';
|
||||||
|
include/stop_slave.inc
|
||||||
|
include/start_slave.inc
|
||||||
|
FLUSH TABLES;
|
||||||
|
SHOW VARIABLES LIKE 'binlog_row_image';
|
||||||
|
Variable_name Value
|
||||||
|
binlog_row_image MINIMAL
|
||||||
|
CON: 'server_3', IMG: 'MINIMAL', RESTART SLAVE: 'Y'
|
||||||
|
connection server_3;
|
||||||
|
SET SESSION binlog_row_image= 'MINIMAL';
|
||||||
|
SET GLOBAL binlog_row_image= 'MINIMAL';
|
||||||
|
include/stop_slave.inc
|
||||||
|
include/start_slave.inc
|
||||||
|
FLUSH TABLES;
|
||||||
|
SHOW VARIABLES LIKE 'binlog_row_image';
|
||||||
|
Variable_name Value
|
||||||
|
binlog_row_image MINIMAL
|
||||||
|
connection server_1;
|
||||||
|
### engines: MyISAM, MyISAM, MyISAM
|
||||||
|
# Create sequences with specific engines per server
|
||||||
|
connection server_1;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=MyISAM;
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
connection server_2;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=MyISAM;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
connection server_3;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=MyISAM;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
# Pt.1 Ensure SETVAL replicates and binlogs correctly
|
||||||
|
connection server_1;
|
||||||
|
SELECT SETVAL(s1, 10);
|
||||||
|
SETVAL(s1, 10)
|
||||||
|
10
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
# Validate SETVAL replicated correctly to other servers
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
include/diff_tables.inc [server_1:test.s1,server_2:test.s1,server_3:test.s1]
|
||||||
|
# Validate server_1 binlogged SETVAL with the correct columns
|
||||||
|
connection server_1;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_2 binlogged SETVAL with the correct columns
|
||||||
|
connection server_2;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_3 binlogged SETVAL with the correct columns
|
||||||
|
connection server_3;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Pt.2 Ensure NEXTVAL replicates and binlogs correctly
|
||||||
|
connection server_1;
|
||||||
|
SELECT NEXTVAL(s1);
|
||||||
|
NEXTVAL(s1)
|
||||||
|
11
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
# Validate NEXTVAL replicated correctly to other servers
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
include/diff_tables.inc [server_1:test.s1,server_2:test.s1,server_3:test.s1]
|
||||||
|
# Validate server_1 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_1;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_2 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_2;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_3 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_3;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Cleanup
|
||||||
|
connection server_1;
|
||||||
|
DROP TABLE s1;
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
### engines: MyISAM, MyISAM, InnoDB
|
||||||
|
# Create sequences with specific engines per server
|
||||||
|
connection server_1;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=MyISAM;
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
connection server_2;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=MyISAM;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
connection server_3;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=InnoDB;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
# Pt.1 Ensure SETVAL replicates and binlogs correctly
|
||||||
|
connection server_1;
|
||||||
|
SELECT SETVAL(s1, 10);
|
||||||
|
SETVAL(s1, 10)
|
||||||
|
10
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
# Validate SETVAL replicated correctly to other servers
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
include/diff_tables.inc [server_1:test.s1,server_2:test.s1,server_3:test.s1]
|
||||||
|
# Validate server_1 binlogged SETVAL with the correct columns
|
||||||
|
connection server_1;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_2 binlogged SETVAL with the correct columns
|
||||||
|
connection server_2;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_3 binlogged SETVAL with the correct columns
|
||||||
|
connection server_3;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Pt.2 Ensure NEXTVAL replicates and binlogs correctly
|
||||||
|
connection server_1;
|
||||||
|
SELECT NEXTVAL(s1);
|
||||||
|
NEXTVAL(s1)
|
||||||
|
11
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
# Validate NEXTVAL replicated correctly to other servers
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
include/diff_tables.inc [server_1:test.s1,server_2:test.s1,server_3:test.s1]
|
||||||
|
# Validate server_1 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_1;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_2 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_2;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_3 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_3;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Cleanup
|
||||||
|
connection server_1;
|
||||||
|
DROP TABLE s1;
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
### engines: MyISAM, InnoDB, MyISAM
|
||||||
|
# Create sequences with specific engines per server
|
||||||
|
connection server_1;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=MyISAM;
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
connection server_2;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=InnoDB;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
connection server_3;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=MyISAM;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
# Pt.1 Ensure SETVAL replicates and binlogs correctly
|
||||||
|
connection server_1;
|
||||||
|
SELECT SETVAL(s1, 10);
|
||||||
|
SETVAL(s1, 10)
|
||||||
|
10
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
# Validate SETVAL replicated correctly to other servers
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
include/diff_tables.inc [server_1:test.s1,server_2:test.s1,server_3:test.s1]
|
||||||
|
# Validate server_1 binlogged SETVAL with the correct columns
|
||||||
|
connection server_1;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_2 binlogged SETVAL with the correct columns
|
||||||
|
connection server_2;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_3 binlogged SETVAL with the correct columns
|
||||||
|
connection server_3;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Pt.2 Ensure NEXTVAL replicates and binlogs correctly
|
||||||
|
connection server_1;
|
||||||
|
SELECT NEXTVAL(s1);
|
||||||
|
NEXTVAL(s1)
|
||||||
|
11
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
# Validate NEXTVAL replicated correctly to other servers
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
include/diff_tables.inc [server_1:test.s1,server_2:test.s1,server_3:test.s1]
|
||||||
|
# Validate server_1 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_1;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_2 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_2;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_3 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_3;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Cleanup
|
||||||
|
connection server_1;
|
||||||
|
DROP TABLE s1;
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
### engines: MyISAM, InnoDB, InnoDB
|
||||||
|
# Create sequences with specific engines per server
|
||||||
|
connection server_1;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=MyISAM;
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
connection server_2;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=InnoDB;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
connection server_3;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=InnoDB;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
# Pt.1 Ensure SETVAL replicates and binlogs correctly
|
||||||
|
connection server_1;
|
||||||
|
SELECT SETVAL(s1, 10);
|
||||||
|
SETVAL(s1, 10)
|
||||||
|
10
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
# Validate SETVAL replicated correctly to other servers
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
include/diff_tables.inc [server_1:test.s1,server_2:test.s1,server_3:test.s1]
|
||||||
|
# Validate server_1 binlogged SETVAL with the correct columns
|
||||||
|
connection server_1;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_2 binlogged SETVAL with the correct columns
|
||||||
|
connection server_2;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_3 binlogged SETVAL with the correct columns
|
||||||
|
connection server_3;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Pt.2 Ensure NEXTVAL replicates and binlogs correctly
|
||||||
|
connection server_1;
|
||||||
|
SELECT NEXTVAL(s1);
|
||||||
|
NEXTVAL(s1)
|
||||||
|
11
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
# Validate NEXTVAL replicated correctly to other servers
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
include/diff_tables.inc [server_1:test.s1,server_2:test.s1,server_3:test.s1]
|
||||||
|
# Validate server_1 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_1;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_2 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_2;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_3 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_3;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Cleanup
|
||||||
|
connection server_1;
|
||||||
|
DROP TABLE s1;
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
### engines: InnoDB, MyISAM, MyISAM
|
||||||
|
# Create sequences with specific engines per server
|
||||||
|
connection server_1;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=InnoDB;
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
connection server_2;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=MyISAM;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
connection server_3;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=MyISAM;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
# Pt.1 Ensure SETVAL replicates and binlogs correctly
|
||||||
|
connection server_1;
|
||||||
|
SELECT SETVAL(s1, 10);
|
||||||
|
SETVAL(s1, 10)
|
||||||
|
10
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
# Validate SETVAL replicated correctly to other servers
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
include/diff_tables.inc [server_1:test.s1,server_2:test.s1,server_3:test.s1]
|
||||||
|
# Validate server_1 binlogged SETVAL with the correct columns
|
||||||
|
connection server_1;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_2 binlogged SETVAL with the correct columns
|
||||||
|
connection server_2;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_3 binlogged SETVAL with the correct columns
|
||||||
|
connection server_3;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Pt.2 Ensure NEXTVAL replicates and binlogs correctly
|
||||||
|
connection server_1;
|
||||||
|
SELECT NEXTVAL(s1);
|
||||||
|
NEXTVAL(s1)
|
||||||
|
11
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
# Validate NEXTVAL replicated correctly to other servers
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
include/diff_tables.inc [server_1:test.s1,server_2:test.s1,server_3:test.s1]
|
||||||
|
# Validate server_1 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_1;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_2 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_2;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_3 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_3;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Cleanup
|
||||||
|
connection server_1;
|
||||||
|
DROP TABLE s1;
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
### engines: InnoDB, MyISAM, InnoDB
|
||||||
|
# Create sequences with specific engines per server
|
||||||
|
connection server_1;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=InnoDB;
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
connection server_2;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=MyISAM;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
connection server_3;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=InnoDB;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
# Pt.1 Ensure SETVAL replicates and binlogs correctly
|
||||||
|
connection server_1;
|
||||||
|
SELECT SETVAL(s1, 10);
|
||||||
|
SETVAL(s1, 10)
|
||||||
|
10
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
# Validate SETVAL replicated correctly to other servers
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
include/diff_tables.inc [server_1:test.s1,server_2:test.s1,server_3:test.s1]
|
||||||
|
# Validate server_1 binlogged SETVAL with the correct columns
|
||||||
|
connection server_1;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_2 binlogged SETVAL with the correct columns
|
||||||
|
connection server_2;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_3 binlogged SETVAL with the correct columns
|
||||||
|
connection server_3;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Pt.2 Ensure NEXTVAL replicates and binlogs correctly
|
||||||
|
connection server_1;
|
||||||
|
SELECT NEXTVAL(s1);
|
||||||
|
NEXTVAL(s1)
|
||||||
|
11
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
# Validate NEXTVAL replicated correctly to other servers
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
include/diff_tables.inc [server_1:test.s1,server_2:test.s1,server_3:test.s1]
|
||||||
|
# Validate server_1 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_1;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_2 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_2;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_3 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_3;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Cleanup
|
||||||
|
connection server_1;
|
||||||
|
DROP TABLE s1;
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
### engines: InnoDB, InnoDB, MyISAM
|
||||||
|
# Create sequences with specific engines per server
|
||||||
|
connection server_1;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=InnoDB;
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
connection server_2;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=InnoDB;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
connection server_3;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=MyISAM;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
# Pt.1 Ensure SETVAL replicates and binlogs correctly
|
||||||
|
connection server_1;
|
||||||
|
SELECT SETVAL(s1, 10);
|
||||||
|
SETVAL(s1, 10)
|
||||||
|
10
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
# Validate SETVAL replicated correctly to other servers
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
include/diff_tables.inc [server_1:test.s1,server_2:test.s1,server_3:test.s1]
|
||||||
|
# Validate server_1 binlogged SETVAL with the correct columns
|
||||||
|
connection server_1;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_2 binlogged SETVAL with the correct columns
|
||||||
|
connection server_2;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_3 binlogged SETVAL with the correct columns
|
||||||
|
connection server_3;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Pt.2 Ensure NEXTVAL replicates and binlogs correctly
|
||||||
|
connection server_1;
|
||||||
|
SELECT NEXTVAL(s1);
|
||||||
|
NEXTVAL(s1)
|
||||||
|
11
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
# Validate NEXTVAL replicated correctly to other servers
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
include/diff_tables.inc [server_1:test.s1,server_2:test.s1,server_3:test.s1]
|
||||||
|
# Validate server_1 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_1;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_2 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_2;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_3 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_3;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Cleanup
|
||||||
|
connection server_1;
|
||||||
|
DROP TABLE s1;
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
### engines: InnoDB, InnoDB, InnoDB
|
||||||
|
# Create sequences with specific engines per server
|
||||||
|
connection server_1;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=InnoDB;
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
connection server_2;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=InnoDB;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
connection server_3;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=InnoDB;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
# Pt.1 Ensure SETVAL replicates and binlogs correctly
|
||||||
|
connection server_1;
|
||||||
|
SELECT SETVAL(s1, 10);
|
||||||
|
SETVAL(s1, 10)
|
||||||
|
10
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
# Validate SETVAL replicated correctly to other servers
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
include/diff_tables.inc [server_1:test.s1,server_2:test.s1,server_3:test.s1]
|
||||||
|
# Validate server_1 binlogged SETVAL with the correct columns
|
||||||
|
connection server_1;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_2 binlogged SETVAL with the correct columns
|
||||||
|
connection server_2;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_3 binlogged SETVAL with the correct columns
|
||||||
|
connection server_3;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Pt.2 Ensure NEXTVAL replicates and binlogs correctly
|
||||||
|
connection server_1;
|
||||||
|
SELECT NEXTVAL(s1);
|
||||||
|
NEXTVAL(s1)
|
||||||
|
11
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
# Validate NEXTVAL replicated correctly to other servers
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
include/diff_tables.inc [server_1:test.s1,server_2:test.s1,server_3:test.s1]
|
||||||
|
# Validate server_1 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_1;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_2 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_2;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_3 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_3;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Cleanup
|
||||||
|
connection server_1;
|
||||||
|
DROP TABLE s1;
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
CON: 'server_1', IMG: 'FULL', RESTART SLAVE: 'N'
|
||||||
|
connection server_1;
|
||||||
|
SET SESSION binlog_row_image= 'FULL';
|
||||||
|
SET GLOBAL binlog_row_image= 'FULL';
|
||||||
|
FLUSH TABLES;
|
||||||
|
SHOW VARIABLES LIKE 'binlog_row_image';
|
||||||
|
Variable_name Value
|
||||||
|
binlog_row_image FULL
|
||||||
|
CON: 'server_2', IMG: 'FULL', RESTART SLAVE: 'Y'
|
||||||
|
connection server_2;
|
||||||
|
SET SESSION binlog_row_image= 'FULL';
|
||||||
|
SET GLOBAL binlog_row_image= 'FULL';
|
||||||
|
include/stop_slave.inc
|
||||||
|
include/start_slave.inc
|
||||||
|
FLUSH TABLES;
|
||||||
|
SHOW VARIABLES LIKE 'binlog_row_image';
|
||||||
|
Variable_name Value
|
||||||
|
binlog_row_image FULL
|
||||||
|
CON: 'server_3', IMG: 'FULL', RESTART SLAVE: 'Y'
|
||||||
|
connection server_3;
|
||||||
|
SET SESSION binlog_row_image= 'FULL';
|
||||||
|
SET GLOBAL binlog_row_image= 'FULL';
|
||||||
|
include/stop_slave.inc
|
||||||
|
include/start_slave.inc
|
||||||
|
FLUSH TABLES;
|
||||||
|
SHOW VARIABLES LIKE 'binlog_row_image';
|
||||||
|
Variable_name Value
|
||||||
|
binlog_row_image FULL
|
||||||
|
connection server_3;
|
||||||
|
include/rpl_end.inc
|
||||||
|
# End of tests
|
796
mysql-test/suite/rpl/r/rpl_row_img_sequence_noblob.result
Normal file
796
mysql-test/suite/rpl/r/rpl_row_img_sequence_noblob.result
Normal file
@ -0,0 +1,796 @@
|
|||||||
|
include/rpl_init.inc [topology=1->2->3]
|
||||||
|
connection server_1;
|
||||||
|
connection server_2;
|
||||||
|
connection server_3;
|
||||||
|
connection server_1;
|
||||||
|
#
|
||||||
|
# binlog_row_image=NOBLOB should write all columns to the binary logs
|
||||||
|
#
|
||||||
|
CON: 'server_1', IMG: 'NOBLOB', RESTART SLAVE: 'N'
|
||||||
|
connection server_1;
|
||||||
|
SET SESSION binlog_row_image= 'NOBLOB';
|
||||||
|
SET GLOBAL binlog_row_image= 'NOBLOB';
|
||||||
|
FLUSH TABLES;
|
||||||
|
SHOW VARIABLES LIKE 'binlog_row_image';
|
||||||
|
Variable_name Value
|
||||||
|
binlog_row_image NOBLOB
|
||||||
|
CON: 'server_2', IMG: 'NOBLOB', RESTART SLAVE: 'Y'
|
||||||
|
connection server_2;
|
||||||
|
SET SESSION binlog_row_image= 'NOBLOB';
|
||||||
|
SET GLOBAL binlog_row_image= 'NOBLOB';
|
||||||
|
include/stop_slave.inc
|
||||||
|
include/start_slave.inc
|
||||||
|
FLUSH TABLES;
|
||||||
|
SHOW VARIABLES LIKE 'binlog_row_image';
|
||||||
|
Variable_name Value
|
||||||
|
binlog_row_image NOBLOB
|
||||||
|
CON: 'server_3', IMG: 'NOBLOB', RESTART SLAVE: 'Y'
|
||||||
|
connection server_3;
|
||||||
|
SET SESSION binlog_row_image= 'NOBLOB';
|
||||||
|
SET GLOBAL binlog_row_image= 'NOBLOB';
|
||||||
|
include/stop_slave.inc
|
||||||
|
include/start_slave.inc
|
||||||
|
FLUSH TABLES;
|
||||||
|
SHOW VARIABLES LIKE 'binlog_row_image';
|
||||||
|
Variable_name Value
|
||||||
|
binlog_row_image NOBLOB
|
||||||
|
connection server_1;
|
||||||
|
### engines: MyISAM, MyISAM, MyISAM
|
||||||
|
# Create sequences with specific engines per server
|
||||||
|
connection server_1;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=MyISAM;
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
connection server_2;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=MyISAM;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
connection server_3;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=MyISAM;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
# Pt.1 Ensure SETVAL replicates and binlogs correctly
|
||||||
|
connection server_1;
|
||||||
|
SELECT SETVAL(s1, 10);
|
||||||
|
SETVAL(s1, 10)
|
||||||
|
10
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
# Validate SETVAL replicated correctly to other servers
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
include/diff_tables.inc [server_1:test.s1,server_2:test.s1,server_3:test.s1]
|
||||||
|
# Validate server_1 binlogged SETVAL with the correct columns
|
||||||
|
connection server_1;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_2 binlogged SETVAL with the correct columns
|
||||||
|
connection server_2;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_3 binlogged SETVAL with the correct columns
|
||||||
|
connection server_3;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Pt.2 Ensure NEXTVAL replicates and binlogs correctly
|
||||||
|
connection server_1;
|
||||||
|
SELECT NEXTVAL(s1);
|
||||||
|
NEXTVAL(s1)
|
||||||
|
11
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
# Validate NEXTVAL replicated correctly to other servers
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
include/diff_tables.inc [server_1:test.s1,server_2:test.s1,server_3:test.s1]
|
||||||
|
# Validate server_1 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_1;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_2 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_2;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_3 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_3;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Cleanup
|
||||||
|
connection server_1;
|
||||||
|
DROP TABLE s1;
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
### engines: MyISAM, MyISAM, InnoDB
|
||||||
|
# Create sequences with specific engines per server
|
||||||
|
connection server_1;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=MyISAM;
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
connection server_2;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=MyISAM;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
connection server_3;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=InnoDB;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
# Pt.1 Ensure SETVAL replicates and binlogs correctly
|
||||||
|
connection server_1;
|
||||||
|
SELECT SETVAL(s1, 10);
|
||||||
|
SETVAL(s1, 10)
|
||||||
|
10
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
# Validate SETVAL replicated correctly to other servers
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
include/diff_tables.inc [server_1:test.s1,server_2:test.s1,server_3:test.s1]
|
||||||
|
# Validate server_1 binlogged SETVAL with the correct columns
|
||||||
|
connection server_1;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_2 binlogged SETVAL with the correct columns
|
||||||
|
connection server_2;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_3 binlogged SETVAL with the correct columns
|
||||||
|
connection server_3;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Pt.2 Ensure NEXTVAL replicates and binlogs correctly
|
||||||
|
connection server_1;
|
||||||
|
SELECT NEXTVAL(s1);
|
||||||
|
NEXTVAL(s1)
|
||||||
|
11
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
# Validate NEXTVAL replicated correctly to other servers
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
include/diff_tables.inc [server_1:test.s1,server_2:test.s1,server_3:test.s1]
|
||||||
|
# Validate server_1 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_1;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_2 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_2;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_3 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_3;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Cleanup
|
||||||
|
connection server_1;
|
||||||
|
DROP TABLE s1;
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
### engines: MyISAM, InnoDB, MyISAM
|
||||||
|
# Create sequences with specific engines per server
|
||||||
|
connection server_1;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=MyISAM;
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
connection server_2;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=InnoDB;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
connection server_3;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=MyISAM;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
# Pt.1 Ensure SETVAL replicates and binlogs correctly
|
||||||
|
connection server_1;
|
||||||
|
SELECT SETVAL(s1, 10);
|
||||||
|
SETVAL(s1, 10)
|
||||||
|
10
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
# Validate SETVAL replicated correctly to other servers
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
include/diff_tables.inc [server_1:test.s1,server_2:test.s1,server_3:test.s1]
|
||||||
|
# Validate server_1 binlogged SETVAL with the correct columns
|
||||||
|
connection server_1;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_2 binlogged SETVAL with the correct columns
|
||||||
|
connection server_2;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_3 binlogged SETVAL with the correct columns
|
||||||
|
connection server_3;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Pt.2 Ensure NEXTVAL replicates and binlogs correctly
|
||||||
|
connection server_1;
|
||||||
|
SELECT NEXTVAL(s1);
|
||||||
|
NEXTVAL(s1)
|
||||||
|
11
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
# Validate NEXTVAL replicated correctly to other servers
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
include/diff_tables.inc [server_1:test.s1,server_2:test.s1,server_3:test.s1]
|
||||||
|
# Validate server_1 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_1;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_2 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_2;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_3 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_3;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Cleanup
|
||||||
|
connection server_1;
|
||||||
|
DROP TABLE s1;
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
### engines: MyISAM, InnoDB, InnoDB
|
||||||
|
# Create sequences with specific engines per server
|
||||||
|
connection server_1;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=MyISAM;
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
connection server_2;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=InnoDB;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
connection server_3;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=InnoDB;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
# Pt.1 Ensure SETVAL replicates and binlogs correctly
|
||||||
|
connection server_1;
|
||||||
|
SELECT SETVAL(s1, 10);
|
||||||
|
SETVAL(s1, 10)
|
||||||
|
10
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
# Validate SETVAL replicated correctly to other servers
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
include/diff_tables.inc [server_1:test.s1,server_2:test.s1,server_3:test.s1]
|
||||||
|
# Validate server_1 binlogged SETVAL with the correct columns
|
||||||
|
connection server_1;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_2 binlogged SETVAL with the correct columns
|
||||||
|
connection server_2;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_3 binlogged SETVAL with the correct columns
|
||||||
|
connection server_3;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Pt.2 Ensure NEXTVAL replicates and binlogs correctly
|
||||||
|
connection server_1;
|
||||||
|
SELECT NEXTVAL(s1);
|
||||||
|
NEXTVAL(s1)
|
||||||
|
11
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
# Validate NEXTVAL replicated correctly to other servers
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
include/diff_tables.inc [server_1:test.s1,server_2:test.s1,server_3:test.s1]
|
||||||
|
# Validate server_1 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_1;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_2 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_2;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_3 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_3;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Cleanup
|
||||||
|
connection server_1;
|
||||||
|
DROP TABLE s1;
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
### engines: InnoDB, MyISAM, MyISAM
|
||||||
|
# Create sequences with specific engines per server
|
||||||
|
connection server_1;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=InnoDB;
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
connection server_2;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=MyISAM;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
connection server_3;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=MyISAM;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
# Pt.1 Ensure SETVAL replicates and binlogs correctly
|
||||||
|
connection server_1;
|
||||||
|
SELECT SETVAL(s1, 10);
|
||||||
|
SETVAL(s1, 10)
|
||||||
|
10
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
# Validate SETVAL replicated correctly to other servers
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
include/diff_tables.inc [server_1:test.s1,server_2:test.s1,server_3:test.s1]
|
||||||
|
# Validate server_1 binlogged SETVAL with the correct columns
|
||||||
|
connection server_1;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_2 binlogged SETVAL with the correct columns
|
||||||
|
connection server_2;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_3 binlogged SETVAL with the correct columns
|
||||||
|
connection server_3;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Pt.2 Ensure NEXTVAL replicates and binlogs correctly
|
||||||
|
connection server_1;
|
||||||
|
SELECT NEXTVAL(s1);
|
||||||
|
NEXTVAL(s1)
|
||||||
|
11
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
# Validate NEXTVAL replicated correctly to other servers
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
include/diff_tables.inc [server_1:test.s1,server_2:test.s1,server_3:test.s1]
|
||||||
|
# Validate server_1 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_1;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_2 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_2;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_3 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_3;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Cleanup
|
||||||
|
connection server_1;
|
||||||
|
DROP TABLE s1;
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
### engines: InnoDB, MyISAM, InnoDB
|
||||||
|
# Create sequences with specific engines per server
|
||||||
|
connection server_1;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=InnoDB;
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
connection server_2;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=MyISAM;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
connection server_3;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=InnoDB;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
# Pt.1 Ensure SETVAL replicates and binlogs correctly
|
||||||
|
connection server_1;
|
||||||
|
SELECT SETVAL(s1, 10);
|
||||||
|
SETVAL(s1, 10)
|
||||||
|
10
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
# Validate SETVAL replicated correctly to other servers
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
include/diff_tables.inc [server_1:test.s1,server_2:test.s1,server_3:test.s1]
|
||||||
|
# Validate server_1 binlogged SETVAL with the correct columns
|
||||||
|
connection server_1;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_2 binlogged SETVAL with the correct columns
|
||||||
|
connection server_2;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_3 binlogged SETVAL with the correct columns
|
||||||
|
connection server_3;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Pt.2 Ensure NEXTVAL replicates and binlogs correctly
|
||||||
|
connection server_1;
|
||||||
|
SELECT NEXTVAL(s1);
|
||||||
|
NEXTVAL(s1)
|
||||||
|
11
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
# Validate NEXTVAL replicated correctly to other servers
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
include/diff_tables.inc [server_1:test.s1,server_2:test.s1,server_3:test.s1]
|
||||||
|
# Validate server_1 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_1;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_2 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_2;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_3 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_3;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Cleanup
|
||||||
|
connection server_1;
|
||||||
|
DROP TABLE s1;
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
### engines: InnoDB, InnoDB, MyISAM
|
||||||
|
# Create sequences with specific engines per server
|
||||||
|
connection server_1;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=InnoDB;
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
connection server_2;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=InnoDB;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
connection server_3;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=MyISAM;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
# Pt.1 Ensure SETVAL replicates and binlogs correctly
|
||||||
|
connection server_1;
|
||||||
|
SELECT SETVAL(s1, 10);
|
||||||
|
SETVAL(s1, 10)
|
||||||
|
10
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
# Validate SETVAL replicated correctly to other servers
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
include/diff_tables.inc [server_1:test.s1,server_2:test.s1,server_3:test.s1]
|
||||||
|
# Validate server_1 binlogged SETVAL with the correct columns
|
||||||
|
connection server_1;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_2 binlogged SETVAL with the correct columns
|
||||||
|
connection server_2;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_3 binlogged SETVAL with the correct columns
|
||||||
|
connection server_3;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Pt.2 Ensure NEXTVAL replicates and binlogs correctly
|
||||||
|
connection server_1;
|
||||||
|
SELECT NEXTVAL(s1);
|
||||||
|
NEXTVAL(s1)
|
||||||
|
11
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
# Validate NEXTVAL replicated correctly to other servers
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
include/diff_tables.inc [server_1:test.s1,server_2:test.s1,server_3:test.s1]
|
||||||
|
# Validate server_1 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_1;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_2 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_2;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_3 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_3;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Cleanup
|
||||||
|
connection server_1;
|
||||||
|
DROP TABLE s1;
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
### engines: InnoDB, InnoDB, InnoDB
|
||||||
|
# Create sequences with specific engines per server
|
||||||
|
connection server_1;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=InnoDB;
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
connection server_2;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=InnoDB;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
connection server_3;
|
||||||
|
SET STATEMENT sql_log_bin=0 FOR create sequence s1 cache=0 engine=InnoDB;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
# Pt.1 Ensure SETVAL replicates and binlogs correctly
|
||||||
|
connection server_1;
|
||||||
|
SELECT SETVAL(s1, 10);
|
||||||
|
SETVAL(s1, 10)
|
||||||
|
10
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
# Validate SETVAL replicated correctly to other servers
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
include/diff_tables.inc [server_1:test.s1,server_2:test.s1,server_3:test.s1]
|
||||||
|
# Validate server_1 binlogged SETVAL with the correct columns
|
||||||
|
connection server_1;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_2 binlogged SETVAL with the correct columns
|
||||||
|
connection server_2;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_3 binlogged SETVAL with the correct columns
|
||||||
|
connection server_3;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Pt.2 Ensure NEXTVAL replicates and binlogs correctly
|
||||||
|
connection server_1;
|
||||||
|
SELECT NEXTVAL(s1);
|
||||||
|
NEXTVAL(s1)
|
||||||
|
11
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
# Validate NEXTVAL replicated correctly to other servers
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
include/diff_tables.inc [server_1:test.s1,server_2:test.s1,server_3:test.s1]
|
||||||
|
# Validate server_1 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_1;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_2 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_2;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Validate server_3 binlogged NEXTVAL with the correct columns
|
||||||
|
connection server_3;
|
||||||
|
FLUSH LOGS;
|
||||||
|
include/ensure_binlog_row_event_columns.inc [(1,2,3,4,5,6,7,8)]
|
||||||
|
# MYSQL_BINLOG mysqld_datadir/binlog_filename -vv > assert_file
|
||||||
|
# Verifying all expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Verifying only expected column ids appear in binlog event output..
|
||||||
|
# ..success
|
||||||
|
# Cleanup
|
||||||
|
connection server_1;
|
||||||
|
DROP TABLE s1;
|
||||||
|
include/save_master_gtid.inc
|
||||||
|
connection server_3;
|
||||||
|
include/sync_with_master_gtid.inc
|
||||||
|
CON: 'server_1', IMG: 'FULL', RESTART SLAVE: 'N'
|
||||||
|
connection server_1;
|
||||||
|
SET SESSION binlog_row_image= 'FULL';
|
||||||
|
SET GLOBAL binlog_row_image= 'FULL';
|
||||||
|
FLUSH TABLES;
|
||||||
|
SHOW VARIABLES LIKE 'binlog_row_image';
|
||||||
|
Variable_name Value
|
||||||
|
binlog_row_image FULL
|
||||||
|
CON: 'server_2', IMG: 'FULL', RESTART SLAVE: 'Y'
|
||||||
|
connection server_2;
|
||||||
|
SET SESSION binlog_row_image= 'FULL';
|
||||||
|
SET GLOBAL binlog_row_image= 'FULL';
|
||||||
|
include/stop_slave.inc
|
||||||
|
include/start_slave.inc
|
||||||
|
FLUSH TABLES;
|
||||||
|
SHOW VARIABLES LIKE 'binlog_row_image';
|
||||||
|
Variable_name Value
|
||||||
|
binlog_row_image FULL
|
||||||
|
CON: 'server_3', IMG: 'FULL', RESTART SLAVE: 'Y'
|
||||||
|
connection server_3;
|
||||||
|
SET SESSION binlog_row_image= 'FULL';
|
||||||
|
SET GLOBAL binlog_row_image= 'FULL';
|
||||||
|
include/stop_slave.inc
|
||||||
|
include/start_slave.inc
|
||||||
|
FLUSH TABLES;
|
||||||
|
SHOW VARIABLES LIKE 'binlog_row_image';
|
||||||
|
Variable_name Value
|
||||||
|
binlog_row_image FULL
|
||||||
|
connection server_3;
|
||||||
|
include/rpl_end.inc
|
||||||
|
# End of tests
|
48
mysql-test/suite/rpl/t/rpl_row_img_sequence_full.test
Normal file
48
mysql-test/suite/rpl/t/rpl_row_img_sequence_full.test
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
#
|
||||||
|
# Purpose:
|
||||||
|
# The rpl_row_img_sequence group of tests verify that sequence MDL updates,
|
||||||
|
# i.e. NEXTVAL and SETVAL, respect the binlog_row_image variable value when
|
||||||
|
# written into the binary log. In particular, it ensures that only changed
|
||||||
|
# columns are written with MINIMAL image mode, and all columns are written
|
||||||
|
# otherwise. This test focuses on validating the behavior of
|
||||||
|
# binlog_row_img=FULL.
|
||||||
|
#
|
||||||
|
# Methodology
|
||||||
|
# After issuing a sequence update, ensure that both 1) it was replicated
|
||||||
|
# correctly, and 2) it was binlogged respective to the binlog_row_image value.
|
||||||
|
# The sequence table does not use caching to ensure each update is immediately
|
||||||
|
# binlogged. Each command is binlogged into its own unique log file, and the
|
||||||
|
# entirety of the file is analyzed for correctness of its sequence event.
|
||||||
|
# Specifically, mysqlbinlog is used in verbose mode so it outputs the columns
|
||||||
|
# which belong to the event, and the columns are analyzed to ensure the correct
|
||||||
|
# ones were logged. rpl_row_img_general_loop.inc is used to test with multiple
|
||||||
|
# chained replicas, varying engines between InnoDB and MyISAM.
|
||||||
|
#
|
||||||
|
# References:
|
||||||
|
# MDEV-28487: sequences not respect value of binlog_row_image with select
|
||||||
|
# nextval(seq_gen)
|
||||||
|
#
|
||||||
|
|
||||||
|
--let $rpl_topology= 1->2->3
|
||||||
|
--source include/rpl_init.inc
|
||||||
|
--source include/have_binlog_format_row.inc
|
||||||
|
|
||||||
|
--connection server_1
|
||||||
|
--source include/have_innodb.inc
|
||||||
|
--connection server_2
|
||||||
|
--source include/have_innodb.inc
|
||||||
|
--connection server_3
|
||||||
|
--source include/have_innodb.inc
|
||||||
|
--connection server_1
|
||||||
|
|
||||||
|
--echo #
|
||||||
|
--echo # binlog_row_image=FULL should write all columns to the binary log
|
||||||
|
--echo #
|
||||||
|
--let $row_img_set=server_1:FULL:N,server_2:FULL:Y,server_3:FULL:Y
|
||||||
|
--source include/rpl_row_img_set.inc
|
||||||
|
--let $expected_columns=(1,2,3,4,5,6,7,8)
|
||||||
|
--let row_img_test_script= include/rpl_row_img_sequence.inc
|
||||||
|
--source include/rpl_row_img_general_loop.inc
|
||||||
|
|
||||||
|
--source include/rpl_end.inc
|
||||||
|
--echo # End of tests
|
21
mysql-test/suite/rpl/t/rpl_row_img_sequence_min.cnf
Normal file
21
mysql-test/suite/rpl/t/rpl_row_img_sequence_min.cnf
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
!include include/default_mysqld.cnf
|
||||||
|
|
||||||
|
[mysqld.1]
|
||||||
|
log-slave-updates
|
||||||
|
innodb
|
||||||
|
gtid_domain_id=0
|
||||||
|
|
||||||
|
[mysqld.2]
|
||||||
|
log-slave-updates
|
||||||
|
innodb
|
||||||
|
gtid_domain_id=1
|
||||||
|
|
||||||
|
[mysqld.3]
|
||||||
|
log-slave-updates
|
||||||
|
innodb
|
||||||
|
gtid_domain_id=2
|
||||||
|
|
||||||
|
[ENV]
|
||||||
|
SERVER_MYPORT_1= @mysqld.1.port
|
||||||
|
SERVER_MYPORT_2= @mysqld.2.port
|
||||||
|
SERVER_MYPORT_3= @mysqld.3.port
|
@ -1,9 +1,11 @@
|
|||||||
#
|
#
|
||||||
# Purpose:
|
# Purpose:
|
||||||
# This test verifies that sequence DML updates, i.e. NEXTVAL and SETVAL,
|
# The rpl_row_img_sequence group of tests verify that sequence MDL updates,
|
||||||
# respect the binlog_row_image variable value when written into the binary log.
|
# i.e. NEXTVAL and SETVAL, respect the binlog_row_image variable value when
|
||||||
# In particular, it ensures that only changed columns are written with MINIMAL
|
# written into the binary log. In particular, it ensures that only changed
|
||||||
# image mode, and all columns are written otherwise.
|
# columns are written with MINIMAL image mode, and all columns are written
|
||||||
|
# otherwise. This test focuses on validating the behavior of
|
||||||
|
# binlog_row_img=MINIMAL.
|
||||||
#
|
#
|
||||||
# Methodology
|
# Methodology
|
||||||
# After issuing a sequence update, ensure that both 1) it was replicated
|
# After issuing a sequence update, ensure that both 1) it was replicated
|
||||||
@ -34,8 +36,8 @@
|
|||||||
--connection server_1
|
--connection server_1
|
||||||
|
|
||||||
--echo #
|
--echo #
|
||||||
--echo # Test Case 1) binlog_row_image=MINIMAL should write only columns
|
--echo # binlog_row_image=MINIMAL should write only columns 1 and 8 to the
|
||||||
--echo # 1 and 8 to the binary log
|
--echo # binary log
|
||||||
--echo #
|
--echo #
|
||||||
--let $row_img_set=server_1:MINIMAL:N,server_2:MINIMAL:Y,server_3:MINIMAL:Y
|
--let $row_img_set=server_1:MINIMAL:N,server_2:MINIMAL:Y,server_3:MINIMAL:Y
|
||||||
--source include/rpl_row_img_set.inc
|
--source include/rpl_row_img_set.inc
|
||||||
@ -43,23 +45,8 @@
|
|||||||
--let row_img_test_script= include/rpl_row_img_sequence.inc
|
--let row_img_test_script= include/rpl_row_img_sequence.inc
|
||||||
--source include/rpl_row_img_general_loop.inc
|
--source include/rpl_row_img_general_loop.inc
|
||||||
|
|
||||||
--echo #
|
|
||||||
--echo # Test Case 2) binlog_row_image=NOBLOB should write all columns to the
|
|
||||||
--echo # binary log
|
|
||||||
--echo #
|
|
||||||
--let $row_img_set=server_1:NOBLOB:N,server_2:NOBLOB:Y,server_3:NOBLOB:Y
|
|
||||||
--source include/rpl_row_img_set.inc
|
|
||||||
--let $expected_columns=(1,2,3,4,5,6,7,8)
|
|
||||||
--source include/rpl_row_img_general_loop.inc
|
|
||||||
|
|
||||||
--echo #
|
|
||||||
--echo # Test Case 3) binlog_row_image=NOBLOB should write all columns to the
|
|
||||||
--echo # binary log
|
|
||||||
--echo #
|
|
||||||
--let $row_img_set=server_1:FULL:N,server_2:FULL:Y,server_3:FULL:Y
|
--let $row_img_set=server_1:FULL:N,server_2:FULL:Y,server_3:FULL:Y
|
||||||
--source include/rpl_row_img_set.inc
|
--source include/rpl_row_img_set.inc
|
||||||
--let $expected_columns=(1,2,3,4,5,6,7,8)
|
|
||||||
--source include/rpl_row_img_general_loop.inc
|
|
||||||
|
|
||||||
--source include/rpl_end.inc
|
--source include/rpl_end.inc
|
||||||
--echo # End of tests
|
--echo # End of tests
|
21
mysql-test/suite/rpl/t/rpl_row_img_sequence_noblob.cnf
Normal file
21
mysql-test/suite/rpl/t/rpl_row_img_sequence_noblob.cnf
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
!include include/default_mysqld.cnf
|
||||||
|
|
||||||
|
[mysqld.1]
|
||||||
|
log-slave-updates
|
||||||
|
innodb
|
||||||
|
gtid_domain_id=0
|
||||||
|
|
||||||
|
[mysqld.2]
|
||||||
|
log-slave-updates
|
||||||
|
innodb
|
||||||
|
gtid_domain_id=1
|
||||||
|
|
||||||
|
[mysqld.3]
|
||||||
|
log-slave-updates
|
||||||
|
innodb
|
||||||
|
gtid_domain_id=2
|
||||||
|
|
||||||
|
[ENV]
|
||||||
|
SERVER_MYPORT_1= @mysqld.1.port
|
||||||
|
SERVER_MYPORT_2= @mysqld.2.port
|
||||||
|
SERVER_MYPORT_3= @mysqld.3.port
|
51
mysql-test/suite/rpl/t/rpl_row_img_sequence_noblob.test
Normal file
51
mysql-test/suite/rpl/t/rpl_row_img_sequence_noblob.test
Normal file
@ -0,0 +1,51 @@
|
|||||||
|
#
|
||||||
|
# Purpose:
|
||||||
|
# The rpl_row_img_sequence group of tests verify that sequence MDL updates,
|
||||||
|
# i.e. NEXTVAL and SETVAL, respect the binlog_row_image variable value when
|
||||||
|
# written into the binary log. In particular, it ensures that only changed
|
||||||
|
# columns are written with MINIMAL image mode, and all columns are written
|
||||||
|
# otherwise. This test focuses on validating the behavior of
|
||||||
|
# binlog_row_img=NOBLOB.
|
||||||
|
#
|
||||||
|
# Methodology
|
||||||
|
# After issuing a sequence update, ensure that both 1) it was replicated
|
||||||
|
# correctly, and 2) it was binlogged respective to the binlog_row_image value.
|
||||||
|
# The sequence table does not use caching to ensure each update is immediately
|
||||||
|
# binlogged. Each command is binlogged into its own unique log file, and the
|
||||||
|
# entirety of the file is analyzed for correctness of its sequence event.
|
||||||
|
# Specifically, mysqlbinlog is used in verbose mode so it outputs the columns
|
||||||
|
# which belong to the event, and the columns are analyzed to ensure the correct
|
||||||
|
# ones were logged. rpl_row_img_general_loop.inc is used to test with multiple
|
||||||
|
# chained replicas, varying engines between InnoDB and MyISAM.
|
||||||
|
#
|
||||||
|
# References:
|
||||||
|
# MDEV-28487: sequences not respect value of binlog_row_image with select
|
||||||
|
# nextval(seq_gen)
|
||||||
|
#
|
||||||
|
|
||||||
|
--let $rpl_topology= 1->2->3
|
||||||
|
--source include/rpl_init.inc
|
||||||
|
--source include/have_binlog_format_row.inc
|
||||||
|
|
||||||
|
--connection server_1
|
||||||
|
--source include/have_innodb.inc
|
||||||
|
--connection server_2
|
||||||
|
--source include/have_innodb.inc
|
||||||
|
--connection server_3
|
||||||
|
--source include/have_innodb.inc
|
||||||
|
--connection server_1
|
||||||
|
|
||||||
|
--echo #
|
||||||
|
--echo # binlog_row_image=NOBLOB should write all columns to the binary logs
|
||||||
|
--echo #
|
||||||
|
--let $row_img_set=server_1:NOBLOB:N,server_2:NOBLOB:Y,server_3:NOBLOB:Y
|
||||||
|
--source include/rpl_row_img_set.inc
|
||||||
|
--let $expected_columns=(1,2,3,4,5,6,7,8)
|
||||||
|
--let row_img_test_script= include/rpl_row_img_sequence.inc
|
||||||
|
--source include/rpl_row_img_general_loop.inc
|
||||||
|
|
||||||
|
--let $row_img_set=server_1:FULL:N,server_2:FULL:Y,server_3:FULL:Y
|
||||||
|
--source include/rpl_row_img_set.inc
|
||||||
|
|
||||||
|
--source include/rpl_end.inc
|
||||||
|
--echo # End of tests
|
@ -609,7 +609,7 @@ int mysql_create_function(THD *thd,udf_func *udf)
|
|||||||
|
|
||||||
/* Allow creation of functions even if we can't open func table */
|
/* Allow creation of functions even if we can't open func table */
|
||||||
if (unlikely(!table))
|
if (unlikely(!table))
|
||||||
goto err;
|
goto err_open_func_table;
|
||||||
table->use_all_columns();
|
table->use_all_columns();
|
||||||
restore_record(table, s->default_values); // Default values for fields
|
restore_record(table, s->default_values); // Default values for fields
|
||||||
table->field[0]->store(u_d->name.str, u_d->name.length, system_charset_info);
|
table->field[0]->store(u_d->name.str, u_d->name.length, system_charset_info);
|
||||||
@ -623,7 +623,7 @@ int mysql_create_function(THD *thd,udf_func *udf)
|
|||||||
{
|
{
|
||||||
my_error(ER_ERROR_ON_WRITE, MYF(0), "mysql.func", error);
|
my_error(ER_ERROR_ON_WRITE, MYF(0), "mysql.func", error);
|
||||||
del_udf(u_d);
|
del_udf(u_d);
|
||||||
goto err;
|
goto err_open_func_table;
|
||||||
}
|
}
|
||||||
|
|
||||||
done:
|
done:
|
||||||
@ -638,6 +638,7 @@ done:
|
|||||||
err:
|
err:
|
||||||
if (new_dl)
|
if (new_dl)
|
||||||
dlclose(dl);
|
dlclose(dl);
|
||||||
|
err_open_func_table:
|
||||||
mysql_rwlock_unlock(&THR_LOCK_udf);
|
mysql_rwlock_unlock(&THR_LOCK_udf);
|
||||||
DBUG_RETURN(1);
|
DBUG_RETURN(1);
|
||||||
}
|
}
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
/*****************************************************************************
|
/*****************************************************************************
|
||||||
|
|
||||||
Copyright (c) 2011, 2018, Oracle and/or its affiliates. All Rights Reserved.
|
Copyright (c) 2011, 2018, Oracle and/or its affiliates. All Rights Reserved.
|
||||||
Copyright (c) 2017, 2021, MariaDB Corporation.
|
Copyright (c) 2017, 2022, MariaDB Corporation.
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or modify it under
|
This program is free software; you can redistribute it and/or modify it under
|
||||||
the terms of the GNU General Public License as published by the Free Software
|
the terms of the GNU General Public License as published by the Free Software
|
||||||
@ -2175,6 +2175,7 @@ func_exit:
|
|||||||
}
|
}
|
||||||
func_exit_committed:
|
func_exit_committed:
|
||||||
ut_ad(mtr.has_committed());
|
ut_ad(mtr.has_committed());
|
||||||
|
ut_free(pcur.old_rec_buf);
|
||||||
|
|
||||||
if (error != DB_SUCCESS) {
|
if (error != DB_SUCCESS) {
|
||||||
/* Report the erroneous row using the new
|
/* Report the erroneous row using the new
|
||||||
@ -2362,7 +2363,8 @@ func_exit_committed:
|
|||||||
entry = row_build_index_entry(old_row, old_ext, index, heap);
|
entry = row_build_index_entry(old_row, old_ext, index, heap);
|
||||||
if (!entry) {
|
if (!entry) {
|
||||||
ut_ad(0);
|
ut_ad(0);
|
||||||
return(DB_CORRUPTION);
|
error = DB_CORRUPTION;
|
||||||
|
goto func_exit_committed;
|
||||||
}
|
}
|
||||||
|
|
||||||
mtr_start(&mtr);
|
mtr_start(&mtr);
|
||||||
|
@ -0,0 +1,8 @@
|
|||||||
|
--let $_expect_file_name= $MYSQLTEST_VARDIR/tmp/mysqld.1.1.expect
|
||||||
|
|
||||||
|
--exec echo "wait" > $_expect_file_name
|
||||||
|
--shutdown_server
|
||||||
|
--source include/wait_until_disconnected.inc
|
||||||
|
--exec echo "restart" > $_expect_file_name
|
||||||
|
--enable_reconnect
|
||||||
|
--source include/wait_until_connected_again.inc
|
12
storage/spider/mysql-test/spider/bugfix/r/mdev_29352.result
Normal file
12
storage/spider/mysql-test/spider/bugfix/r/mdev_29352.result
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
CREATE TABLE t (c INT);
|
||||||
|
SHOW CREATE TABLE t;
|
||||||
|
Table Create Table
|
||||||
|
t CREATE TABLE `t` (
|
||||||
|
`c` int(11) DEFAULT NULL
|
||||||
|
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci
|
||||||
|
FLUSH TABLES WITH READ LOCK;
|
||||||
|
CREATE FUNCTION spider_bg_direct_sql RETURNS INT SONAME 'ha_spider.so';
|
||||||
|
ERROR HY000: Can't execute the query because you have a conflicting read lock
|
||||||
|
SELECT * FROM t;
|
||||||
|
c
|
||||||
|
DROP TABLE t;
|
11
storage/spider/mysql-test/spider/bugfix/t/mdev_29352.test
Normal file
11
storage/spider/mysql-test/spider/bugfix/t/mdev_29352.test
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
CREATE TABLE t (c INT);
|
||||||
|
SHOW CREATE TABLE t;
|
||||||
|
FLUSH TABLES WITH READ LOCK;
|
||||||
|
|
||||||
|
--error ER_CANT_UPDATE_WITH_READLOCK
|
||||||
|
CREATE FUNCTION spider_bg_direct_sql RETURNS INT SONAME 'ha_spider.so';
|
||||||
|
SELECT * FROM t;
|
||||||
|
|
||||||
|
--source include/restart_spider.inc
|
||||||
|
|
||||||
|
DROP TABLE t;
|
@ -1857,6 +1857,8 @@ group_by_handler *spider_create_group_by_handler(
|
|||||||
{
|
{
|
||||||
for (order = query->order_by; order; order = order->next)
|
for (order = query->order_by; order; order = order->next)
|
||||||
{
|
{
|
||||||
|
if ((*order->item)->type() == Item::SUM_FUNC_ITEM)
|
||||||
|
continue;
|
||||||
if (spider_db_print_item_type((*order->item), NULL, spider, NULL, NULL, 0,
|
if (spider_db_print_item_type((*order->item), NULL, spider, NULL, NULL, 0,
|
||||||
roop_count, TRUE, fields_arg))
|
roop_count, TRUE, fields_arg))
|
||||||
{
|
{
|
||||||
|
Reference in New Issue
Block a user