summaryrefslogtreecommitdiff
path: root/sql/handler.cc
diff options
context:
space:
mode:
authorSergei Golubchik <sergii@pisem.net>2013-06-15 19:09:31 +0200
committerSergei Golubchik <sergii@pisem.net>2013-06-15 19:09:31 +0200
commit68a6705ed1dc7a0ff5c86910e23989f97788e741 (patch)
tree9c9c157920481f06dc13344e86be5c92c68dc473 /sql/handler.cc
parent6a0a4f00a1741df68c0d201e090f5d28f59410c8 (diff)
downloadmariadb-git-68a6705ed1dc7a0ff5c86910e23989f97788e741.tar.gz
MDEV-4441 DROP DATABASE with a newly created ARCHIVE table does not work
1. DROP DATABASE should use ha_discover_table_names(), not look at .frm files. 2. filename_to_tablename() also encodes temp file names #sql- -> #mysql50##sql 3. no special treatment for #sql- files, no TABLE_LIST::internal_tmp_table 4. discover also table file names, that start from #
Diffstat (limited to 'sql/handler.cc')
-rw-r--r--sql/handler.cc4
1 files changed, 2 insertions, 2 deletions
diff --git a/sql/handler.cc b/sql/handler.cc
index 660697cd74b..7a6edc967ba 100644
--- a/sql/handler.cc
+++ b/sql/handler.cc
@@ -4634,12 +4634,12 @@ static my_bool discover_names(THD *thd, plugin_ref plugin,
}
int ha_discover_table_names(THD *thd, LEX_STRING *db, MY_DIR *dirp,
- Discovered_table_list *result)
+ Discovered_table_list *result, bool reusable)
{
int error;
DBUG_ENTER("ha_discover_table_names");
- if (engines_with_discover_table_names == 0)
+ if (engines_with_discover_table_names == 0 && !reusable)
{
error= ext_table_discovery_simple(dirp, result);
result->sort();