mirror of
https://github.com/MariaDB/server.git
synced 2025-08-31 22:22:30 +03:00
This failure is caused by commit 43ca6059ca
(MDEV-24720). InnoDB fails to remove the ahi entries
during rollback of bulk insert operation. InnoDB should
remove the AHI entries of root page before reinitialising it.
Reviewed-by: Marko Mäkelä
36 lines
970 B
Plaintext
36 lines
970 B
Plaintext
--source include/have_innodb.inc
|
|
--source include/have_sequence.inc
|
|
|
|
--echo #
|
|
--echo # MDEV-24715 Assertion !node->table->skip_alter_undo
|
|
--echo #
|
|
CREATE TABLE t (a INT UNIQUE) ENGINE=InnoDB
|
|
REPLACE SELECT 1 AS a, 2 AS b UNION SELECT 1 AS a, 3 AS c;
|
|
SELECT * FROM t;
|
|
DROP TABLE t;
|
|
|
|
CREATE TEMPORARY TABLE t (a INT UNIQUE) ENGINE=InnoDB
|
|
REPLACE SELECT 1 AS a, 2 AS b UNION SELECT 1 AS a, 3 AS c;
|
|
SELECT * FROM t;
|
|
DROP TEMPORARY TABLE t;
|
|
|
|
--echo #
|
|
--echo # MDEV-24720 AHI removal during bulk index rollback
|
|
--echo #
|
|
SET @save_ahi = @@global.innodb_adaptive_hash_index;
|
|
SET GLOBAL innodb_adaptive_hash_index = 1;
|
|
CREATE TABLE t1(f1 INT NOT NULL)ENGINE=InnoDB;
|
|
BEGIN;
|
|
INSERT INTO t1 SELECT * FROM seq_1_to_65536;
|
|
ROLLBACK;
|
|
CHECK TABLE t1;
|
|
--echo #
|
|
--echo # MDEV-24832 Root page AHI Removal fails fails during
|
|
--echo # bulk index rollback
|
|
--echo #
|
|
BEGIN;
|
|
INSERT INTO t1 SELECT * FROM seq_1_to_500;
|
|
ROLLBACK;
|
|
DROP TABLE t1;
|
|
SET GLOBAL innodb_adaptive_hash_index = @save_ahi;
|