• unknown's avatar
    Bug#10178 - failure to find a row in heap table by concurrent UPDATEs · 8f490b2c
    unknown authored
    Moved the key statistics update to info().
    The table is not locked in open(). This made wrong stats possible.
    
    No test case for the test suite.
    This happens only with heavy concurrency.
    A test script is added to the bug report.
    
    
    mysql-test/r/heap_hash.result:
      Bug#10178 - failure to find a row in heap table by concurrent UPDATEs
      Updated test results to reflect the new  statistics behaviour.
    mysql-test/t/heap_hash.test:
      Bug#10178 - failure to find a row in heap table by concurrent UPDATEs
      Added a FLUSH TABLES to avoid statistics differences between normal 
      and ps-protocol tests.
    sql/ha_heap.cc:
      Bug#10178 - failure to find a row in heap table by concurrent UPDATEs
      Moved the key statistics update to info().
      The table is not locked in open(). This made wrong stats possible.
    sql/ha_heap.h:
      Bug#10178 - failure to find a row in heap table by concurrent UPDATEs
      Added an element to track the validity of the key statistics.
    8f490b2c
ha_heap.cc 15.9 KB