1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-29 05:21:33 +03:00

MDEV-21045 AddressSanitizer: use-after-poison in mem_heap_dup / row_log_table_get_pk_col

row_log_table_get_pk_col(): read instant field value from instant
alter table when it's required.
This commit is contained in:
Eugene Kosov
2019-11-15 21:49:04 +07:00
parent 24a279bb27
commit a14544260c
3 changed files with 48 additions and 0 deletions

View File

@ -264,3 +264,21 @@ a b vb
5 NULL NULL
DROP TABLE t1;
SET GLOBAL innodb_purge_rseg_truncate_frequency = @save_frequency;
#
# MDEV-21045 AddressSanitizer: use-after-poison in mem_heap_dup / row_log_table_get_pk_col
#
CREATE TABLE t1 (a TEXT) ENGINE = InnoDB ROW_FORMAT=REDUNDANT;
INSERT INTO t1 (a) VALUES ('foo');
ALTER TABLE t1 ADD COLUMN b INT DEFAULT 0,algorithm=instant;
connect con2,localhost,root,,test;
SET DEBUG_SYNC='innodb_inplace_alter_table_enter SIGNAL onlinealter WAIT_FOR update';
ALTER TABLE t1 ADD PRIMARY KEY (b);
connection default;
SET DEBUG_SYNC='now WAIT_FOR onlinealter';
UPDATE t1 SET b = 1;
SET DEBUG_SYNC='now SIGNAL update';
connection con2;
connection default;
SET DEBUG_SYNC='RESET';
disconnect con2;
DROP TABLE t1;