summaryrefslogtreecommitdiff
path: root/sql/opt_subselect.cc
diff options
context:
space:
mode:
authorAlexander Barkov <bar@mariadb.org>2016-11-26 21:19:48 +0400
committerAlexander Barkov <bar@mariadb.org>2016-12-16 18:23:21 +0400
commit749bbb3d7b213b5044d97006259f013d70007d60 (patch)
treec24697cb4c861de2defff64aafbf89db566370d1 /sql/opt_subselect.cc
parent352ff9cc966b790f02128cc918281514cc245c26 (diff)
downloadmariadb-git-749bbb3d7b213b5044d97006259f013d70007d60.tar.gz
MDEV-11357 Split Item_cache::get_cache() into virtual methods in Type_handler
This patch: - Adds a new virtual method Type_handler::Item_get_cache - Splits moves Item_cache::get_cache() into the new method, every "case XXX_RESULT" to the corresponding Type_handler_xxx::Item_get_cache. - Adds Item::get_cache as a convenience wrapper, to make the caller code shorter. - Changes the last argument of Arg_comparator::cache_converted_constant() from Item_result to "const Type_handler *". - Removes subselect_engine::cmp_type, subselect_engine::res_type, subselect_engine::res_field_type and derives subselect_engine from Type_handler_hybrid_field_type instead. - Makes Type_handler_varchar public, as it's now needed as the default data type handler for subselect_engine.
Diffstat (limited to 'sql/opt_subselect.cc')
-rw-r--r--sql/opt_subselect.cc2
1 files changed, 1 insertions, 1 deletions
diff --git a/sql/opt_subselect.cc b/sql/opt_subselect.cc
index a9222cbca42..461a2107437 100644
--- a/sql/opt_subselect.cc
+++ b/sql/opt_subselect.cc
@@ -5228,7 +5228,7 @@ int select_value_catcher::setup(List<Item> *items)
List_iterator<Item> li(*items);
for (uint i= 0; (sel_item= li++); i++)
{
- if (!(row[i]= Item_cache::get_cache(thd, sel_item)))
+ if (!(row[i]= sel_item->get_cache(thd)))
return TRUE;
row[i]->setup(thd, sel_item);
}