• svoj@mysql.com/april.(none)'s avatar
    BUG#23526 - show table status reports incorrect values for MyISAM tables · 3cfd578e
    svoj@mysql.com/april.(none) authored
    This problem could happen when show table status get outdated copy
    of TABLE object from table cache.
    
    MyISAM updates state info when external_lock() method is called. Though
    I_S does not lock a table to avoid deadlocks. If I_S opens a table which
    is in a table cache it will likely get outdated state info copy.
    
    In this case shared state copy is more recent than local copy. This problem
    is fixed by correctly restoring myisam state info pointer back to original
    value, that is to shared state.
    
    Affects MyISAM only. No good deterministic test case for this fix.
    3cfd578e
mi_locking.c 16.1 KB