• unknown's avatar
    Bug#25856 (HANDLER table OPEN in one connection lock DROP TABLE in another one) · 8bdb043f
    unknown authored
    mysql_ha_open calls mysql_ha_close on the error path (unsupported) to close the (opened) table before inserting it into the tables hash list handler_tables_hash) but mysql_ha_close only closes tables which are on the hash list, causing the table to be left open and locked.
    
    This change moves the table close logic into a separate function that is always called on the error path of mysql_ha_open or on a normal handler close (mysql_ha_close).
    
    
    mysql-test/r/lock_multi.result:
      Bug#25856 test result
    mysql-test/t/lock_multi.test:
      Bug#25856 test case
    sql/sql_handler.cc:
      Move the table close logic into a separate function that is always called on the error path of mysql_ha_open or on a normal handler close.
    8bdb043f
sql_handler.cc 24.3 KB