Replace find_temporary_table() with is_temporary_table()

DROP TABLE opens all temporary tables at start, but then
uses find_temporary_table() to check if a table is temporary
instead of is_temporary_table() which is much faster.

This patch fixes this issue.
This commit is contained in:
Monty 2020-09-29 19:02:05 +03:00 committed by Sergei Golubchik
parent 949d10bea2
commit f671a9dee7
2 changed files with 2 additions and 3 deletions

View File

@ -4930,7 +4930,7 @@ mysql_execute_command(THD *thd)
{
if (!lex->tmp_table() &&
(!thd->is_current_stmt_binlog_format_row() ||
!thd->find_temporary_table(table)))
!is_temporary_table(table)))
{
WSREP_TO_ISOLATION_BEGIN(NULL, NULL, all_tables);
break;

View File

@ -2131,8 +2131,7 @@ bool mysql_rm_table(THD *thd,TABLE_LIST *tables, bool if_exists,
{
LEX_CSTRING db_name= table->db;
LEX_CSTRING table_name= table->table_name;
if (table->open_type == OT_BASE_ONLY ||
!thd->find_temporary_table(table))
if (!is_temporary_table(table))
(void) delete_statistics_for_table(thd, &db_name, &table_name);
}
}