• Marko Mäkelä's avatar
    MDEV-24402: InnoDB CHECK TABLE ... EXTENDED · ab019010
    Marko Mäkelä authored
    Until now, the attribute EXTENDED of CHECK TABLE was ignored by InnoDB,
    and InnoDB only counted the records in each index according
    to the current read view. Unless the attribute QUICK was specified, the
    function btr_validate_index() would be invoked to validate the B-tree
    structure (the sibling and child links between index pages).
    
    The EXTENDED check will not only count all index records according to the
    current read view, but also ensure that any delete-marked records in the
    clustered index are waiting for the purge of history, and that all
    secondary index records point to a version of the clustered index record
    that is waiting for the purge of history. In other words, no index may
    contain orphan records. Normal MVCC reads and the non-EXTENDED version
    of CHECK TABLE would ignore these orphans.
    
    Unpurged records merely result in warnings (at most one per index),
    not errors, and no indexes will be flagged as corrupted due to such
    garbage. It will remain possibl...
    ab019010
innodb_virtual_purge.test 4.22 KB