Skip to content

Commit 06ec439

Browse files
committed
MDEV-27058 fixup: Relax a debug assertion
buf_page_get_low(): Assert that the block not be read-fixed. It may be write-fixed while we only hold a shared latch on the page. Page writes are protected by U latches, which are compatible with S. In all other places where we assert that the block not be IO-fixed, we are holding U or X latch, which does prevent concurrent file I/O.
1 parent 36a19f9 commit 06ec439

File tree

1 file changed

+2
-1
lines changed

1 file changed

+2
-1
lines changed

storage/innobase/buf/buf0buf.cc

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2673,7 +2673,8 @@ buf_page_get_low(
26732673
after buf_zip_decompress() in this function. */
26742674
block->page.lock.s_lock();
26752675
state = block->page.state();
2676-
ut_ad(state < buf_page_t::READ_FIX);
2676+
ut_ad(state < buf_page_t::READ_FIX
2677+
|| state >= buf_page_t::WRITE_FIX);
26772678
const page_id_t id{block->page.id()};
26782679
block->page.lock.s_unlock();
26792680

0 commit comments

Comments
 (0)