• ingo@mysql.com's avatar
    Bug#16986 - Deadlock condition with MyISAM tables · d27a15a8
    ingo@mysql.com authored
    Addendum fixes after changing the condition variable
    for the global read lock.
    
    The stress test suite revealed some deadlocks. Some were
    related to the new condition variable (COND_global_read_lock)
    and some were general problems with the global read lock.
    
    It is now necessary to signal COND_global_read_lock whenever 
    COND_refresh is signalled.
    
    We need to wait for the release of a global read lock if one 
    is set before every operation that requires a write lock.
    But we must not wait if we have locked tables by LOCK TABLES.
    After setting a global read lock a thread waits until all
    write locks are released.
    d27a15a8
sql_handler.cc 22.4 KB