summaryrefslogtreecommitdiff
path: root/sql/sql_select.h
diff options
context:
space:
mode:
authorunknown <gkodinov@dl145s.mysql.com>2006-10-19 16:43:46 +0200
committerunknown <gkodinov@dl145s.mysql.com>2006-10-19 16:43:46 +0200
commitc634eca2dca3ffd7dffeec6f0c610d798a2acf34 (patch)
tree1d4b8a5dec4c6f52e2b5a119df93d2225083cb70 /sql/sql_select.h
parent170bfde5bc23655c73dcf3f569866978e9d2e00c (diff)
parentc5435fd8d557f9286b8ebfc7ee7c29a1b89d689f (diff)
downloadmariadb-git-c634eca2dca3ffd7dffeec6f0c610d798a2acf34.tar.gz
Merge dl145s.mysql.com:/data/bk/team_tree_merge/MERGE/mysql-5.0-opt
into dl145s.mysql.com:/data/bk/team_tree_merge/MERGE/mysql-5.1-opt BitKeeper/deleted/.del-bdb.result: Auto merged mysql-test/r/func_gconcat.result: Auto merged mysql-test/r/group_min_max.result: Auto merged mysql-test/r/innodb.result: Auto merged mysql-test/r/merge.result: Auto merged mysql-test/r/myisam.result: Auto merged mysql-test/r/olap.result: Auto merged mysql-test/r/select.result: Auto merged mysql-test/r/type_decimal.result: Auto merged mysql-test/r/view.result: Auto merged mysql-test/t/func_gconcat.test: Auto merged mysql-test/t/group_min_max.test: Auto merged mysql-test/t/select.test: Auto merged sql/item_cmpfunc.cc: Auto merged sql/item_cmpfunc.h: Auto merged sql/opt_range.cc: Auto merged sql/opt_range.h: Auto merged sql/sql_base.cc: Auto merged sql/sql_delete.cc: Auto merged sql/sql_lex.cc: Auto merged sql/sql_lex.h: Auto merged sql/sql_select.h: Auto merged sql/sql_update.cc: Auto merged sql/table.cc: Auto merged include/my_base.h: SCCS merged mysql-test/include/mix1.inc: SCCS merged mysql-test/r/group_by.result: SCCS merged mysql-test/r/innodb_mysql.result: SCCS merged mysql-test/t/group_by.test: SCCS merged sql/sql_select.cc: SCCS merged
Diffstat (limited to 'sql/sql_select.h')
-rw-r--r--sql/sql_select.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/sql/sql_select.h b/sql/sql_select.h
index eb6d2d5d34f..a66529a6459 100644
--- a/sql/sql_select.h
+++ b/sql/sql_select.h
@@ -321,6 +321,18 @@ public:
bool union_part; // this subselect is part of union
bool optimized; // flag to avoid double optimization in EXPLAIN
+ /*
+ storage for caching buffers allocated during query execution.
+ These buffers allocations need to be cached as the thread memory pool is
+ cleared only at the end of the execution of the whole query and not caching
+ allocations that occur in repetition at execution time will result in
+ excessive memory usage.
+ */
+ SORT_FIELD *sortorder; // make_unireg_sortorder()
+ TABLE **table_reexec; // make_simple_join()
+ JOIN_TAB *join_tab_reexec; // make_simple_join()
+ /* end of allocation caching storage */
+
JOIN(THD *thd_arg, List<Item> &fields_arg, ulonglong select_options_arg,
select_result *result_arg)
:fields_list(fields_arg)
@@ -346,6 +358,9 @@ public:
examined_rows= 0;
exec_tmp_table1= 0;
exec_tmp_table2= 0;
+ sortorder= 0;
+ table_reexec= 0;
+ join_tab_reexec= 0;
thd= thd_arg;
sum_funcs= sum_funcs2= 0;
procedure= 0;