diff options
author | Sinisa@sinisa.nasamreza.org <> | 2003-07-19 18:49:04 +0300 |
---|---|---|
committer | Sinisa@sinisa.nasamreza.org <> | 2003-07-19 18:49:04 +0300 |
commit | 1167e170d21cb211662dfb0ad10b93fd0d8955cc (patch) | |
tree | 19379b85309c32c2bd61dc6cde7d76ea08547ee9 /sql/sql_derived.cc | |
parent | 46813d545d39ff7cd7293f442fdf87ad3db30b7f (diff) | |
parent | bb764d6b5ea9a70047889b85431f201b148c23a0 (diff) | |
download | mariadb-git-1167e170d21cb211662dfb0ad10b93fd0d8955cc.tar.gz |
Merge
Diffstat (limited to 'sql/sql_derived.cc')
-rw-r--r-- | sql/sql_derived.cc | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/sql/sql_derived.cc b/sql/sql_derived.cc index c61e8f42343..470bffe56d9 100644 --- a/sql/sql_derived.cc +++ b/sql/sql_derived.cc @@ -122,6 +122,16 @@ int mysql_derived(THD *thd, LEX *lex, SELECT_LEX_UNIT *unit, res= -1; goto exit; } + + /* + This is done in order to redo all field optimisations when any of the + involved tables is used in the outer query + */ + if (tables) + { + for (TABLE_LIST *cursor= tables; cursor; cursor= cursor->next) + cursor->table->clear_query_id= 1; + } item_list= select_cursor->item_list; select_cursor->with_wild= 0; |