diff options
author | Alexander Barkov <bar@mariadb.org> | 2016-11-26 21:19:48 +0400 |
---|---|---|
committer | Alexander Barkov <bar@mariadb.org> | 2016-12-16 18:23:21 +0400 |
commit | 749bbb3d7b213b5044d97006259f013d70007d60 (patch) | |
tree | c24697cb4c861de2defff64aafbf89db566370d1 /sql/opt_subselect.cc | |
parent | 352ff9cc966b790f02128cc918281514cc245c26 (diff) | |
download | mariadb-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.cc | 2 |
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); } |