• Michael Widenius's avatar
    Added HANDLER support for MEMORY tables · 0d01dd20
    Michael Widenius authored
    Added key and file version numbers to MEMORY tables so that we can detect if someone has changed them between HANDLER calls.
    
    
    mysql-test/suite/handler/aria.result:
      Fixed result after test changes
    mysql-test/suite/handler/handler.inc:
      Changed test to use combined key to ensure rows are returned in a pre-determinated order.
    mysql-test/suite/handler/heap.result:
      New result
    mysql-test/suite/handler/heap.test:
      Added test for HANDLER + HEAP
    mysql-test/suite/handler/innodb.result:
      Fixed result after test changes
    mysql-test/suite/handler/myisam.result:
      Fixed result after test changes
    sql/sql_handler.cc:
      Fixed wrong parameter to ha_index_next_same()
    storage/heap/ha_heap.cc:
      Abort key scan if table has changed.
      Abort table scan if table has been recreated.
    storage/heap/ha_heap.h:
      Added support for HANDLER
    storage/heap/hp_clear.c:
      Increase version number so that we can notice changes if using HANDLER
    storage/heap/hp_delete.c:
      Increase key data version number on key changes.
    storage/heap/hp_rfirst.c:
      Remember version of key data
      Give error if using read-first on hash key.
    storage/heap/hp_rkey.c:
      Remember version of key data
    storage/heap/hp_rlast.c:
      Remember version of key data
      Give error if using read-last on hash key.
    storage/heap/hp_rnext.c:
      Fixed that we get next key from last search.
    storage/heap/hp_rprev.c:
      Fixed that we get previous key from last search.
    storage/heap/hp_scan.c:
      Remember version of key and file data
    storage/heap/hp_update.c:
      Increase key data version number on key changes.
    storage/heap/hp_write.c:
      Increase key data version number on key changes.
    0d01dd20
heap.h 8.78 KB