diff options
author | Marko Mäkelä <marko.makela@mariadb.com> | 2017-03-14 12:15:49 +0200 |
---|---|---|
committer | Marko Mäkelä <marko.makela@mariadb.com> | 2017-03-14 12:15:49 +0200 |
commit | a77c2ea78f76c07446a3014052cb8c3b74c4860c (patch) | |
tree | 4da6de32bcc01dc6474a7a40651611c4cfc25501 | |
parent | f0a2f4bbb981eadb7d2baf8ff8ded0cf0c7cb16e (diff) | |
download | mariadb-git-a77c2ea78f76c07446a3014052cb8c3b74c4860c.tar.gz |
Post-fix MDEV-12219 Discard temporary undo logs at transaction commit
row_purge_remove_sec_if_poss_leaf(): Add a debug assertion.
row_purge_parse_undo_rec(): Add a debug assertion that the table cannot
be a temporary table. Remove a dead condition.
-rw-r--r-- | storage/innobase/row/row0purge.cc | 8 |
1 files changed, 2 insertions, 6 deletions
diff --git a/storage/innobase/row/row0purge.cc b/storage/innobase/row/row0purge.cc index 074bb3edbc1..6f669e5809a 100644 --- a/storage/innobase/row/row0purge.cc +++ b/storage/innobase/row/row0purge.cc @@ -412,6 +412,7 @@ row_purge_remove_sec_if_poss_leaf( bool success = true; log_free_check(); + ut_ad(index->table == node->table); ut_ad(!dict_table_is_temporary(index->table)); mtr_start(&mtr); mtr.set_named_space(index->space); @@ -855,6 +856,7 @@ try_again: /* The table has been dropped: no need to do purge */ goto err_exit; } + ut_ad(!dict_table_is_temporary(node->table)); if (node->table->n_v_cols && !node->table->vc_templ && dict_table_has_indexed_v_cols(node->table)) { @@ -874,12 +876,6 @@ try_again: innobase_init_vc_templ(node->table); } - /* Disable purging for temp-tables as they are short-lived - and no point in re-organzing such short lived tables */ - if (dict_table_is_temporary(node->table)) { - goto close_exit; - } - if (node->table->ibd_file_missing) { /* We skip purge of missing .ibd files */ |