1
0
mirror of https://github.com/MariaDB/server.git synced 2026-01-06 05:22:24 +03:00

reverse order in global select list allow to avoid recursion in derived tables

sql/sql_delete.cc:
  new order in global select list
sql/sql_derived.cc:
  removed recursion from derived tables
sql/sql_insert.cc:
  new order in global select list
sql/sql_lex.h:
  pointer to global select list
sql/sql_select.cc:
  new order in global select list
sql/sql_update.cc:
  new order in global select list
This commit is contained in:
unknown
2002-11-27 01:12:16 +02:00
parent 8079acf080
commit a554151951
7 changed files with 30 additions and 41 deletions

View File

@@ -50,21 +50,6 @@ int mysql_derived(THD *thd, LEX *lex, SELECT_LEX_UNIT *unit, TABLE_LIST *t)
if (res)
DBUG_RETURN(-1);
for (SELECT_LEX *ssl= sl; ssl; ssl= ssl->next_select_in_list())
{
TABLE_LIST *t_tables= (TABLE_LIST *)ssl->table_list.first;
for (TABLE_LIST *cursor= (TABLE_LIST *)t_tables;
cursor;
cursor=cursor->next)
{
if (cursor->derived)
{
res= mysql_derived(thd, lex, (SELECT_LEX_UNIT *)cursor->derived,
cursor);
if (res) DBUG_RETURN(res);
}
}
}
Item *item;
List_iterator<Item> it(sl->item_list);