mirror of
https://github.com/MariaDB/server.git
synced 2025-08-08 11:22:35 +03:00
MDEV-34453 Trying to read 16384 bytes at 70368744161280 outside the bounds of the file: ./ibdata1
The issue is caused by a race between buf_page_create_low getting the
page from buffer pool hash and buf_LRU_free_page evicting it from LRU.
The issue is introduced in 10.6 by MDEV-27058
commit aaef2e1d8c
MDEV-27058: Reduce the size of buf_block_t and buf_page_t
The solution is buffer fix the page before releasing buffer pool mutex
in buf_page_create_low when x_lock_try fails to acquire the page latch.
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
--source include/no_valgrind_without_big.inc
|
||||
--source include/maybe_debug.inc
|
||||
######## t/ddl_innodb.test ######
|
||||
#
|
||||
# Stress the storage engine InnoDB with CREATE/DROP TABLE/INDEX
|
||||
@@ -34,6 +35,13 @@ if (!$run)
|
||||
##### Some preparations needed for the ddl*.inc scripts
|
||||
--source suite/stress/include/ddl.pre
|
||||
|
||||
if ($have_debug) {
|
||||
--disable_query_log
|
||||
SET @old_debug_dbug = @@global.debug_dbug;
|
||||
SET DEBUG_DBUG="+d,ib_buf_create_intermittent_wait";
|
||||
--enable_query_log
|
||||
}
|
||||
|
||||
--source suite/stress/include/ddl1.inc
|
||||
--source suite/stress/include/ddl2.inc
|
||||
--source suite/stress/include/ddl3.inc
|
||||
@@ -43,5 +51,11 @@ if (!$run)
|
||||
--source suite/stress/include/ddl7.inc
|
||||
--source suite/stress/include/ddl8.inc
|
||||
|
||||
if ($have_debug) {
|
||||
--disable_query_log
|
||||
SET @@global.debug_dbug = @old_debug_dbug;
|
||||
--enable_query_log
|
||||
}
|
||||
|
||||
##### Cleanup
|
||||
--source suite/stress/include/ddl.cln
|
||||
|
Reference in New Issue
Block a user