mirror of
https://github.com/MariaDB/server.git
synced 2025-09-06 19:08:06 +03:00
MDEV-5740: Assertion `!derived->first_select()->exclude_from_table_unique_test || derived->outer_select()-> exclude_from_table_unique_test' failed on 2nd execution of PS with derived_merge
Do not check tables of executed units. Debug info about stages of derived tables execution added.
This commit is contained in:
@@ -1735,6 +1735,17 @@ retry:
|
||||
DBUG_PRINT("info", ("real table: %s.%s", d_name, t_name));
|
||||
for (TABLE_LIST *tl= table_list;;)
|
||||
{
|
||||
if (tl &&
|
||||
tl->select_lex && tl->select_lex->master_unit() &&
|
||||
tl->select_lex->master_unit()->executed)
|
||||
{
|
||||
/*
|
||||
There is no sense to check tables of already executed parts
|
||||
of the query
|
||||
*/
|
||||
tl= tl->next_global;
|
||||
continue;
|
||||
}
|
||||
if (((! (res= find_table_in_global_list(tl, d_name, t_name))) &&
|
||||
(! (res= mysql_lock_have_duplicate(thd, table, tl)))) ||
|
||||
((!res->table || res->table != table->table) &&
|
||||
|
Reference in New Issue
Block a user