• Marko Mäkelä's avatar
    MDEV-27058 fixup: Bogus assertion !block->page.is_io_fixed() · e6a06113
    Marko Mäkelä authored
    buf_page_get_gen(): After recv_sys_t::recover_low() returned,
    the page must not be read-fixed, but it may be write-fixed,
    because the io-fix state is protected by block->page.lock,
    which we are not holding yet.
    
    Also, let us copy the block descriptor state to a local variable
    for examination, so that in case an assertion would fail again,
    we will have the sampled state in the core dump. In a core dump of
    the assertion failure, we had block->page.fix() == buf_page_t::UNFIXED,
    that is, the assertion expression was holding again.
    e6a06113
buf0buf.cc 122 KB