• Marko Mäkelä's avatar
    MDEV-11927 InnoDB change buffer is not being merged · 78153cf6
    Marko Mäkelä authored
    to tables in the system tablespace
    
    This is a regression caused by MDEV-11585, which accidentally
    changed Tablespace::is_undo_tablespace() in an incorrect way,
    causing the InnoDB system tablespace to be reported as a dedicated
    undo tablespace, for which the change buffer is not applicable.
    
    Tablespace::is_undo_tablespace(): Remove. There were only 2
    calls from the function buf_page_io_complete(). Replace those
    calls as appropriate.
    
    Also, merge changes to tablespace import/export tests from
    MySQL 5.7, and clean up the tests a little further, allowing
    them to be run with any innodb_page_size.
    
    Remove duplicated error injection instrumentation for the
    import/export tests.  In MySQL 5.7, the error injection label
    buf_page_is_corrupt_failure was renamed to
    buf_page_import_corrupt_failure.
    
    fil_space_extend_must_retry(): Correct a debug assertion
    (tablespaces can be extended during IMPORT), and remove a
    TODO comment about compressed temporary tables that was
    already addressed in MDEV-11816.
    
    dict_build_tablespace_for_table(): Correct a comment that
    no longer holds after MDEV-11816, and assert that
    ROW_FORMAT=COMPRESSED can only be used in .ibd files.
    78153cf6
dict0crea.cc 69.6 KB