diff options
author | konstantin@mysql.com <> | 2005-06-24 22:48:46 +0400 |
---|---|---|
committer | konstantin@mysql.com <> | 2005-06-24 22:48:46 +0400 |
commit | aa300fa71b13c1fc10b1867aa078321a5d887ded (patch) | |
tree | 9ae103fc8b2957a8fed538a143020aea9b0565e4 /sql/sql_select.h | |
parent | 4ab4ee9c7cf2b9b6d1a740806e49f87228d04faa (diff) | |
parent | 56a37f8e07c458fb4fe97e3be95655014b10aab2 (diff) | |
download | mariadb-git-aa300fa71b13c1fc10b1867aa078321a5d887ded.tar.gz |
Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/opt/local/work/mysql-5.0-join_free2push
Diffstat (limited to 'sql/sql_select.h')
-rw-r--r-- | sql/sql_select.h | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/sql/sql_select.h b/sql/sql_select.h index 885b50016af..6d33ae2f978 100644 --- a/sql/sql_select.h +++ b/sql/sql_select.h @@ -325,7 +325,7 @@ class JOIN :public Sql_alloc int optimize(); int reinit(); void exec(); - int cleanup(); + int destroy(); void restore_tmp(); bool alloc_func_list(); bool make_sum_func_list(List<Item> &all_fields, List<Item> &send_fields, @@ -349,7 +349,15 @@ class JOIN :public Sql_alloc int rollup_send_data(uint idx); int rollup_write_data(uint idx, TABLE *table); bool test_in_subselect(Item **where); + /* + Release memory and, if possible, the open tables held by this execution + plan (and nested plans). It's used to release some tables before + the end of execution in order to increase concurrency and reduce + memory consumption. + */ void join_free(bool full); + /* Cleanup this JOIN, possibly for reuse */ + void cleanup(bool full); void clear(); bool save_join_tab(); bool send_row_on_empty_set() |