• unknown's avatar
    Bug #21074 Large query_cache freezes mysql server sporadically under heavy load · 733bd4fe
    unknown authored
    Invaldating a subset of a sufficiently large query cache can take a long time.
    During this time the server is efficiently frozen and no other operation can
    be executed. This patch addresses this problem by setting a time limit on
    how long time a dictionary access request can take before giving up on the 
    attempt. This patch does not work for query cache invalidations issued by
    DROP, ALTER or RENAME TABLE operations.
    
    
    sql/sql_cache.cc:
      Changed mutex locking to a timed spinn lock. If access to query cache dictionary
      takes "a long time" (currently more than 0.1 seconds) the system fall backs on
      ordinary statement execution.
    733bd4fe
sql_cache.cc 130 KB