polardbxengine/mysql-test/suite/innodb/r/autoinc_persist_deadlock.re...

40 lines
1.9 KiB
Plaintext

CREATE TABLE t1 (
a INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
b varchar(500),
c varchar(500),
d varchar(500),
e varchar(500)) ENGINE = InnoDB TABLESPACE = innodb_system;
CREATE TABLE t2 (a INT NOT NULL AUTO_INCREMENT PRIMARY KEY) ENGINE = InnoDB;
INSERT INTO t1(b, c, d, e) VALUES(repeat('0a', 250), repeat('1a', 250), repeat('2a', 250), repeat('3a', 250));
INSERT INTO t1(b, c, d, e) VALUES(repeat('0b', 250), repeat('1b', 250), repeat('2b', 250), repeat('3b', 250));
INSERT INTO t1(b, c, d, e) VALUES(repeat('0c', 250), repeat('1c', 250), repeat('2c', 250), repeat('3c', 250));
INSERT INTO t1(b, c, d, e) VALUES(repeat('0d', 250), repeat('1d', 250), repeat('2d', 250), repeat('3d', 250));
INSERT INTO t1(b, c, d, e) VALUES(repeat('0e', 250), repeat('1e', 250), repeat('2e', 250), repeat('3e', 250));
INSERT INTO t1(b, c, d, e) VALUES(repeat('0f', 250), repeat('1f', 250), repeat('2f', 250), repeat('3f', 250));
INSERT INTO t1(b, c, d, e) VALUES(repeat('0g', 250), repeat('1g', 250), repeat('2g', 250), repeat('3g', 250));
INSERT INTO t2 VALUES(0), (0), (0);
# Invoke checkpoint to persist metadata of t2 to DDTableBuffer
SET @start_global_value = @@global.innodb_log_checkpoint_now;
set global innodb_log_checkpoint_now=ON;
SET @@global.innodb_log_checkpoint_now = @start_global_value;
SET DEBUG_SYNC='delete_metadata_before SIGNAL delete WAIT_FOR insert';
ALTER TABLE t2 ADD COLUMN b INT, ALGORITHM=INPLACE;
SET DEBUG_SYNC='now WAIT_FOR delete';
INSERT INTO t1(b, c, d, e) VALUES(repeat('0a', 250), repeat('1a', 250), repeat('2a', 250), repeat('3a', 250));
SET DEBUG_SYNC='now SIGNAL insert';
SET DEBUG_SYNC='RESET';
SELECT count(*) FROM t1;
count(*)
8
SELECT count(*) FROM t2;
count(*)
3
SHOW CREATE TABLE t2;
Table Create Table
t2 CREATE TABLE `t2` (
`a` int(11) NOT NULL AUTO_INCREMENT,
`b` int(11) DEFAULT NULL,
PRIMARY KEY (`a`)
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci
DROP TABLE t1, t2;