1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-02 14:22:51 +03:00

MDEV-17167 - InnoDB: Failing assertion: table->get_ref_count() == 0 upon

truncating a temporary table

TRUNCATE expects only one TABLE instance (which is used by TRUNCATE
itself) to be open. However this requirement wasn't enforced after
"MDEV-5535: Cannot reopen temporary table".

Fixed by closing unused table instances before performing TRUNCATE.
This commit is contained in:
Sergey Vojtovich
2018-09-12 16:36:45 +04:00
parent b9a5ff3644
commit bad2f1569d
6 changed files with 89 additions and 1 deletions

View File

@ -4628,6 +4628,7 @@ public:
TMP_TABLE_SHARE* save_tmp_table_share(TABLE *table);
void restore_tmp_table_share(TMP_TABLE_SHARE *share);
void close_unused_temporary_table_instances(const TABLE_LIST *tl);
private:
/* Whether a lock has been acquired? */