• Marko Mäkelä's avatar
    MDEV-20102 Phantom InnoDB table remains after interrupted CREATE...SELECT · a5e268a2
    Marko Mäkelä authored
    This is a regression due to MDEV-16515 that affects some versions in
    the MariaDB 10.1 server series starting with 10.1.35, and possibly
    all versions starting with 10.2.17, 10.3.8, and 10.4.0.
    
    The idea of MDEV-16515 is to allow DROP TABLE to be interrupted,
    in case it was stuck due to some concurrent activity. We already
    made some cases of internal DROP TABLE immune to kill in MDEV-18237,
    MDEV-16647, MDEV-17470. We must include the cleanup of
    CREATE TABLE...SELECT in the list of such internal DROP TABLE.
    
    ha_innobase::delete_table(): Pass create_failed=true if the current
    SQL statement is CREATE, so that the table will be dropped.
    
    row_drop_table_for_mysql(): If create_failed=true, do not allow
    the operation to be interrupted.
    a5e268a2
row0mysql.cc 154 KB