diff options
author | Jan Lindström <jan.lindstrom@mariadb.com> | 2016-09-14 15:11:01 +0300 |
---|---|---|
committer | Jan Lindström <jan.lindstrom@mariadb.com> | 2016-09-14 15:11:01 +0300 |
commit | 4133d2940e89f7bef640a3c68ce24c4cc9637d1b (patch) | |
tree | 6268af0d748b7927a395fd7cc5b95e5b57e3d6eb | |
parent | 62ed88017c8a137bd2b57cb55de1badf36f3906a (diff) | |
download | mariadb-git-4133d2940e89f7bef640a3c68ce24c4cc9637d1b.tar.gz |
Fix crash on innodb_fts.innobase_drop_fts_index_table
We need to pass nonatomic=false (dont allow data dict unlock),
because the transaction may hold locks on SYS_* tables from
previous calls to fts_drop_table().
-rw-r--r-- | storage/innobase/fts/fts0fts.cc | 2 | ||||
-rw-r--r-- | storage/innobase/row/row0merge.cc | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/storage/innobase/fts/fts0fts.cc b/storage/innobase/fts/fts0fts.cc index 13412ca073a..3451607a37e 100644 --- a/storage/innobase/fts/fts0fts.cc +++ b/storage/innobase/fts/fts0fts.cc @@ -1453,7 +1453,7 @@ fts_drop_table( /* Pass nonatomic=false (dont allow data dict unlock), because the transaction may hold locks on SYS_* tables from previous calls to fts_drop_table(). */ - error = row_drop_table_for_mysql(table_name, trx, true, false); + error = row_drop_table_for_mysql(table_name, trx, true, false, false); if (error != DB_SUCCESS) { ib::error() << "Unable to drop FTS index aux table " diff --git a/storage/innobase/row/row0merge.cc b/storage/innobase/row/row0merge.cc index 8ab60656171..2ab0e491bd7 100644 --- a/storage/innobase/row/row0merge.cc +++ b/storage/innobase/row/row0merge.cc @@ -4590,7 +4590,7 @@ row_merge_drop_table( ut_a(table->get_ref_count() == 0); return(row_drop_table_for_mysql(table->name.m_name, - trx, false, false)); + trx, false, false, false)); } /** Write an MLOG_INDEX_LOAD record to indicate in the redo-log |