summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarko Mäkelä <marko.makela@mariadb.com>2019-01-18 06:51:52 +0200
committerMarko Mäkelä <marko.makela@mariadb.com>2019-01-18 06:51:52 +0200
commit37ffdb44ef96bacac8981cf180bb47be5da486df (patch)
tree7e76cbe36327c10b26e0c66e076974f53e7656a9
parent69221746db4814d9395fc9905e1aae4f497c92e1 (diff)
parent1d72db45a880d07fec5eda648601235f96a693c0 (diff)
downloadmariadb-git-37ffdb44ef96bacac8981cf180bb47be5da486df.tar.gz
Merge 10.1 into 10.2
-rw-r--r--storage/innobase/row/row0mysql.cc7
-rw-r--r--storage/xtradb/row/row0mysql.cc6
2 files changed, 9 insertions, 4 deletions
diff --git a/storage/innobase/row/row0mysql.cc b/storage/innobase/row/row0mysql.cc
index fdaf4588927..55eadefeb29 100644
--- a/storage/innobase/row/row0mysql.cc
+++ b/storage/innobase/row/row0mysql.cc
@@ -1,7 +1,7 @@
/*****************************************************************************
Copyright (c) 2000, 2018, Oracle and/or its affiliates. All Rights Reserved.
-Copyright (c) 2015, 2018, MariaDB Corporation.
+Copyright (c) 2015, 2019, MariaDB Corporation.
This program is free software; you can redistribute it and/or modify it under
the terms of the GNU General Public License as published by the Free Software
@@ -3377,8 +3377,11 @@ row_drop_table_for_mysql(
calling btr_search_drop_page_hash_index() while we
hold the InnoDB dictionary lock, we will drop any
adaptive hash index entries upfront. */
+ bool immune = is_temp_name
+ || strstr(table->name.m_name, "/FTS");
+
while (buf_LRU_drop_page_hash_for_tablespace(table)) {
- if ((!is_temp_name && trx_is_interrupted(trx))
+ if ((!immune && trx_is_interrupted(trx))
|| srv_shutdown_state
!= SRV_SHUTDOWN_NONE) {
err = DB_INTERRUPTED;
diff --git a/storage/xtradb/row/row0mysql.cc b/storage/xtradb/row/row0mysql.cc
index 57d06e58943..6c11dd78d7a 100644
--- a/storage/xtradb/row/row0mysql.cc
+++ b/storage/xtradb/row/row0mysql.cc
@@ -1,7 +1,7 @@
/*****************************************************************************
Copyright (c) 2000, 2018, Oracle and/or its affiliates. All Rights Reserved.
-Copyright (c) 2015, 2018, MariaDB Corporation.
+Copyright (c) 2015, 2019, MariaDB Corporation.
This program is free software; you can redistribute it and/or modify it under
the terms of the GNU General Public License as published by the Free Software
@@ -4235,7 +4235,9 @@ row_drop_table_for_mysql(
hold the InnoDB dictionary lock, we will drop any
adaptive hash index entries upfront. */
const bool is_temp = dict_table_is_temporary(table)
- || strstr(tablename_minus_db, tmp_file_prefix);
+ || strncmp(tablename_minus_db, tmp_file_prefix,
+ tmp_file_prefix_length)
+ || strncmp(tablename_minus_db, "FTS_", 4);
while (buf_LRU_drop_page_hash_for_tablespace(table)) {
if ((!is_temp && trx_is_interrupted(trx))
|| srv_shutdown_state != SRV_SHUTDOWN_NONE) {