MDEV-22495 Assertion ...status != buf_page_t::FREED in ibuf_read_merge_pages()
ibuf_read_merge_pages(): Request a possibly freed page. The change buffer is discarded lazily for freed pages either by this function or when buf_page_create() reuses a page. buf_page_get_low(): Relax a debug assertion. Do not attempt change buffer merge on freed pages. ibuf_merge_or_delete_for_page(): Assert that the page state is NORMAL. INIT_ON_FLUSH is not possible, because in that case buf_page_create() should have removed any buffered changes for the page. buf_page_get_gen(): Apply buffered changes also in the case when we can avoid reading the page based on buffered redo log records. This addresses a hard-to-reproduce scenario that was broken in commit 6697135c.
Showing
Please register or sign in to comment