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

BUG#13126: When choosing join order for join with nested joins, don't produce join

orders that cannot be handled by the executioner.
This commit is contained in:
sergefp@mysql.com
2005-10-25 19:28:27 +04:00
parent a5c5b2c658
commit 1441f1c188
9 changed files with 397 additions and 17 deletions

View File

@@ -136,7 +136,9 @@ typedef struct st_join_table {
TABLE_REF ref;
JOIN_CACHE cache;
JOIN *join;
/* Bitmap of nested joins this table is part of */
nested_join_map embedding_map;
void cleanup();
} JOIN_TAB;
@@ -193,6 +195,13 @@ class JOIN :public Sql_alloc
*/
ha_rows fetch_limit;
POSITION positions[MAX_TABLES+1],best_positions[MAX_TABLES+1];
/*
Bitmap of nested joins embedding the position at the end of the current
partial join (valid only during join optimizer run).
*/
nested_join_map cur_embedding_map;
double best_read;
List<Item> *fields;
List<Cached_item> group_fields, group_fields_cache;