• Marko Mäkelä's avatar
    Bug#12560151 61132: infinite loop in buf_page_get_gen() when handling · ec2389dc
    Marko Mäkelä authored
    compressed pages
    
    After loading a compressed-only page in buf_page_get_gen() we allocate a new
    block for decompression. The problem is that the compressed page is neither
    buffer-fixed nor I/O-fixed by the time we call buf_LRU_get_free_block(),
    so it may end up being evicted and returned back as a new block.
    
    buf_page_get_gen(): Temporarily buffer-fix the compressed-only block
    while allocating memory for an uncompressed page frame.
    This should prevent this form of the infinite loop, which is more likely
    with a small innodb_buffer_pool_size.
    
    rb#2511 approved by Jimmy Yang, Sunny Bains
    ec2389dc
To find the state of this project's repository at the time of any of these versions, check out the tags.
ChangeLog 78.2 KB