• Mattias Jonsson's avatar
    Bug#55091: Server crashes on ADD PARTITION after a failed attempt · 2d07cb7d
    Mattias Jonsson authored
    In case of failure in ALTER ... PARTITION under LOCK TABLE
    the server could crash, due to it had modified the locked
    table object, which was not reverted in case of failure,
    resulting in a bad table definition used after the failed
    command.
    
    Solved by always closing the LOCKED TABLE, even in case
    of error.
    
    Note: this is a 5.1-only fix, bug#56172 fixed it in 5.5+
    
    mysql-test/r/partition_innodb_plugin.result:
      updated result
    mysql-test/t/disabled.def:
      Only disabled valgrind instead.
    mysql-test/t/partition_innodb_plugin.test:
      Added test
    sql/sql_partition.cc:
      close_thread_tables do not close LOCKED TABLEs
      and destroys the table object (including part_info),
      so to avoid it to be reused, always close the table
      regardless of any previous failure.
    2d07cb7d
sql_partition.cc 241 KB