1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-30 16:24:05 +03:00

MDEV-34256 InnoDB throws out of bound write due to temporary

tablespace truncation

- InnoDB fails with out of bound write error after temporary
tablespace truncation. This issue caused by
commit c507678b20 (MDEV-28699).
InnoDB fail to clear freed ranges if shrinking size
is the last offset of the freed range.
This commit is contained in:
Thirunarayanan Balathandayuthapani
2024-05-29 13:10:15 +05:30
parent 457948707d
commit 1849dfef64
3 changed files with 37 additions and 1 deletions

View File

@ -0,0 +1,25 @@
--source include/have_innodb.inc
set @old_innodb_buffer_pool_size = @@innodb_buffer_pool_size;
set @old_immediate_scrub_data_val= @@innodb_immediate_scrub_data_uncompressed;
SET GLOBAL innodb_immediate_scrub_data_uncompressed=1;
SET GLOBAL innodb_buffer_pool_size= 16777216;
CREATE TEMPORARY TABLE t1(c1 MEDIUMTEXT) ENGINE=InnoDB;
INSERT INTO t1 VALUES (repeat(1,16777215));
DROP TEMPORARY TABLE t1;
SET GLOBAL innodb_truncate_temporary_tablespace_now=1;
let $wait_timeout = 180;
let $wait_condition =
SELECT SUBSTR(variable_value, 1, 30) = 'Completed resizing buffer pool'
FROM information_schema.global_status
WHERE LOWER(variable_name) = 'innodb_buffer_pool_resize_status';
SET GLOBAL innodb_buffer_pool_size=10485760;
--source include/wait_condition.inc
set global innodb_buffer_pool_size = @old_innodb_buffer_pool_size;
set global innodb_immediate_scrub_data_uncompressed = @old_immediate_scrub_data_val;
--source include/wait_condition.inc