• Davi Arnaut's avatar
    Bug#41098: Query Cache returns wrong result with concurrent insert · a2e4449b
    Davi Arnaut authored
    The problem is that select queries executed concurrently with
    a concurrent insert on a MyISAM table could be cached if the
    select started after the query cache invalidation but before
    the unlock of tables performed by the concurrent insert. This
    race could happen because the concurrent insert was failing
    to prevent cache of select queries happening at the same time.
    
    The solution is to add a 'uncacheable' status flag to signal
    that a concurrent insert is being performed on the table and
    that queries executing at the same time shouldn't cache the
    results.
    a2e4449b
mi_locking.c 16.6 KB