• marko's avatar
    branches/zip: Fix two bugs in the relocation of block descriptors. · 4861c59c
    marko authored
    Improve diagnostics.
    
    buf_buddy_relocate(): Do not assume all small blocks to contain only one
    buf_page_t object.  Require an exact size match, as in the case of
    compressed pages.
    
    buf_relocate(): Relocate buf_pool->LRU_old if needed.
    Validate the LRU list in debug builds.
    
    buf_LRU_block_remove_hashed_page(): Do not overwrite FIL_PAGE_OFFSET
    or FIL_PAGE_ARCH_LOG_NO_OR_SPACE_ID.  The memory will be invalidated
    in debug builds of buf_buddy_free().
    
    buf0buddy.c: Add assertions for not holding buf_pool->zip_mutex.
    The calling thread should not be holding any block->mutex, but it might
    be too time-consuming to assert against that, even #ifdef UNIV_SYNC_DEBUG.
    4861c59c
buf0lru.c 32.8 KB