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

MDEV-15826 Purge attempts to free BLOB page after BEGIN;INSERT;UPDATE;ROLLBACK

- During rollback, redo segments priorities over no-redo rollback
segments and it leads to failure of redo rollback segment undo
logs truncation.
This commit is contained in:
Thirunarayanan Balathandayuthapani
2018-04-18 12:39:39 +05:30
parent 1d98333ad9
commit 341edddc3d
3 changed files with 46 additions and 10 deletions

View File

@ -140,3 +140,16 @@ CHECK TABLE test_tab;
Table Op Msg_type Msg_text
test.test_tab check status OK
DROP TABLE test_tab;
SET @saved_frequency = @@GLOBAL.innodb_purge_rseg_truncate_frequency;
SET GLOBAL innodb_purge_rseg_truncate_frequency = 1;
CREATE TEMPORARY TABLE t2(i INT)ENGINE=InnoDB;
CREATE TABLE t1(i TEXT NOT NULL) ENGINE=INNODB;
BEGIN;
INSERT t1 SET i=REPEAT('1234567890',840);
UPDATE t1 SET i='';
INSERT INTO t2 VALUES(2);
ROLLBACK;
InnoDB 0 transactions not purged
DROP TABLE t1;
DROP TABLE t2;
SET GLOBAL innodb_purge_rseg_truncate_frequency = @saved_frequency;