summaryrefslogtreecommitdiff
path: root/sql/sql_class.h
diff options
context:
space:
mode:
authorunknown <timour@askmonty.org>2011-01-11 14:04:08 +0200
committerunknown <timour@askmonty.org>2011-01-11 14:04:08 +0200
commitaf77c92daa9c9adf895a0163d9e9b467ec2a7cc6 (patch)
tree555b0a562b8a99bd51b70ad1b7e6ae41faa34e3e /sql/sql_class.h
parent8291d34af9b8e309f95346f7d123dee716508d4f (diff)
parent87d27bbf9b4f5b03ee3322b83ed1749c2f61943d (diff)
downloadmariadb-git-af77c92daa9c9adf895a0163d9e9b467ec2a7cc6.tar.gz
Merge MWL#89 into 5.3 main.
Diffstat (limited to 'sql/sql_class.h')
-rw-r--r--sql/sql_class.h9
1 files changed, 6 insertions, 3 deletions
diff --git a/sql/sql_class.h b/sql/sql_class.h
index 4b49fbcd3ff..50a286ac06a 100644
--- a/sql/sql_class.h
+++ b/sql/sql_class.h
@@ -2951,6 +2951,8 @@ public:
uint convert_blob_length;
CHARSET_INFO *table_charset;
bool schema_table;
+ /* TRUE if the temp table is created for subquery materialization. */
+ bool materialized_subquery;
/*
True if GROUP BY and its aggregate functions are already computed
by a table access method (e.g. by loose index scan). In this case
@@ -2974,8 +2976,8 @@ public:
TMP_TABLE_PARAM()
:copy_field(0), group_parts(0),
group_length(0), group_null_parts(0), convert_blob_length(0),
- schema_table(0), precomputed_group_by(0), force_copy_fields(0),
- bit_fields_as_long(0), skip_create_table(0)
+ schema_table(0), materialized_subquery(0), precomputed_group_by(0),
+ force_copy_fields(0), bit_fields_as_long(0), skip_create_table(0)
{}
~TMP_TABLE_PARAM()
{
@@ -3009,6 +3011,7 @@ public:
virtual bool create_result_table(THD *thd, List<Item> *column_types,
bool is_distinct, ulonglong options,
const char *alias, bool bit_fields_as_long);
+ TMP_TABLE_PARAM *get_tmp_table_param() { return &tmp_table_param; }
};
/* Base subselect interface class */
@@ -3072,7 +3075,7 @@ protected:
void reset();
public:
- select_materialize_with_stats() {}
+ select_materialize_with_stats() { tmp_table_param.init(); }
virtual bool create_result_table(THD *thd, List<Item> *column_types,
bool is_distinct, ulonglong options,
const char *alias, bool bit_fields_as_long);