MDEV-16379 Move Item_basic_const::used_table_map to Item_cache
This commit is contained in:
parent
c3a4dcd0f0
commit
9988a423d2
16
sql/item.h
16
sql/item.h
@ -2524,11 +2524,8 @@ protected:
|
|||||||
|
|
||||||
class Item_basic_constant :public Item_basic_value
|
class Item_basic_constant :public Item_basic_value
|
||||||
{
|
{
|
||||||
table_map used_table_map;
|
|
||||||
public:
|
public:
|
||||||
Item_basic_constant(THD *thd): Item_basic_value(thd), used_table_map(0) {};
|
Item_basic_constant(THD *thd): Item_basic_value(thd) {};
|
||||||
void set_used_tables(table_map map) { used_table_map= map; }
|
|
||||||
table_map used_tables() const { return used_table_map; }
|
|
||||||
bool check_vcol_func_processor(void *arg) { return FALSE;}
|
bool check_vcol_func_processor(void *arg) { return FALSE;}
|
||||||
virtual Item_basic_constant *make_string_literal_concat(THD *thd,
|
virtual Item_basic_constant *make_string_literal_concat(THD *thd,
|
||||||
const LEX_CSTRING *)
|
const LEX_CSTRING *)
|
||||||
@ -6248,12 +6245,15 @@ protected:
|
|||||||
cache_value() will set this flag to TRUE.
|
cache_value() will set this flag to TRUE.
|
||||||
*/
|
*/
|
||||||
bool value_cached;
|
bool value_cached;
|
||||||
|
|
||||||
|
table_map used_table_map;
|
||||||
public:
|
public:
|
||||||
Item_cache(THD *thd):
|
Item_cache(THD *thd):
|
||||||
Item_basic_constant(thd),
|
Item_basic_constant(thd),
|
||||||
Type_handler_hybrid_field_type(&type_handler_string),
|
Type_handler_hybrid_field_type(&type_handler_string),
|
||||||
example(0), cached_field(0),
|
example(0), cached_field(0),
|
||||||
value_cached(0)
|
value_cached(0),
|
||||||
|
used_table_map(0)
|
||||||
{
|
{
|
||||||
fixed= 1;
|
fixed= 1;
|
||||||
maybe_null= 1;
|
maybe_null= 1;
|
||||||
@ -6264,7 +6264,8 @@ protected:
|
|||||||
Item_basic_constant(thd),
|
Item_basic_constant(thd),
|
||||||
Type_handler_hybrid_field_type(handler),
|
Type_handler_hybrid_field_type(handler),
|
||||||
example(0), cached_field(0),
|
example(0), cached_field(0),
|
||||||
value_cached(0)
|
value_cached(0),
|
||||||
|
used_table_map(0)
|
||||||
{
|
{
|
||||||
fixed= 1;
|
fixed= 1;
|
||||||
maybe_null= 1;
|
maybe_null= 1;
|
||||||
@ -6281,6 +6282,9 @@ public:
|
|||||||
cached_field= ((Item_field *)item)->field;
|
cached_field= ((Item_field *)item)->field;
|
||||||
return 0;
|
return 0;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
void set_used_tables(table_map map) { used_table_map= map; }
|
||||||
|
table_map used_tables() const { return used_table_map; }
|
||||||
enum Type type() const { return CACHE_ITEM; }
|
enum Type type() const { return CACHE_ITEM; }
|
||||||
|
|
||||||
const Type_handler *type_handler() const
|
const Type_handler *type_handler() const
|
||||||
|
Loading…
x
Reference in New Issue
Block a user