summaryrefslogtreecommitdiff
path: root/sql/sql_trigger.cc
diff options
context:
space:
mode:
authorMonty <monty@mariadb.org>2020-06-10 11:55:00 +0300
committerMonty <monty@mariadb.org>2020-06-14 19:39:43 +0300
commit56045ef94a1393849e034d187e2ca5d9fd31ad32 (patch)
tree344994c5388dd97a15c6f9ccb89842246fd38ff2 /sql/sql_trigger.cc
parentab7eedc1858dc92ab10b96bc3df007775f1d6bb5 (diff)
downloadmariadb-git-56045ef94a1393849e034d187e2ca5d9fd31ad32.tar.gz
Fix for crash in Aria LOCK TABLES + CREATE TRIGGER
MDEV-22829 SIGSEGV in _ma_reset_history on LOCK
Diffstat (limited to 'sql/sql_trigger.cc')
-rw-r--r--sql/sql_trigger.cc6
1 files changed, 5 insertions, 1 deletions
diff --git a/sql/sql_trigger.cc b/sql/sql_trigger.cc
index 779faa96f82..677e6cfa510 100644
--- a/sql/sql_trigger.cc
+++ b/sql/sql_trigger.cc
@@ -558,7 +558,11 @@ bool mysql_create_or_drop_trigger(THD *thd, TABLE_LIST *tables, bool create)
/* Later on we will need it to downgrade the lock */
mdl_ticket= table->mdl_ticket;
- if (wait_while_table_is_used(thd, table, HA_EXTRA_FORCE_REOPEN))
+ /*
+ RENAME ensures that table is flushed properly and locked tables will
+ be removed from the active transaction
+ */
+ if (wait_while_table_is_used(thd, table, HA_EXTRA_PREPARE_FOR_RENAME))
goto end;
lock_upgrade_done= TRUE;