summaryrefslogtreecommitdiff
path: root/sql/sql_select.h
diff options
context:
space:
mode:
authorkonstantin@mysql.com <>2005-06-24 22:48:46 +0400
committerkonstantin@mysql.com <>2005-06-24 22:48:46 +0400
commitaa300fa71b13c1fc10b1867aa078321a5d887ded (patch)
tree9ae103fc8b2957a8fed538a143020aea9b0565e4 /sql/sql_select.h
parent4ab4ee9c7cf2b9b6d1a740806e49f87228d04faa (diff)
parent56a37f8e07c458fb4fe97e3be95655014b10aab2 (diff)
downloadmariadb-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.h10
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()