diff options
author | unknown <monty@mashka.mysql.fi> | 2003-02-10 17:59:16 +0200 |
---|---|---|
committer | unknown <monty@mashka.mysql.fi> | 2003-02-10 17:59:16 +0200 |
commit | 96273457dd172291892b279c420a770e64e0a5a3 (patch) | |
tree | afc92b80727719cbb09f63c506e547cb0aed94f4 /sql/item.h | |
parent | ed95131e0637d6adb280e3501134dbf7496da3a4 (diff) | |
download | mariadb-git-96273457dd172291892b279c420a770e64e0a5a3.tar.gz |
Move tmp_table_used to THD
Optimize depending sub querys
Remove valgrind warnings
libmysqld/lib_sql.cc:
Better way to reset errors
mysql-test/mysql-test-run.sh:
Remove wrong `
mysql-test/r/subselect.result:
Don't use table t1
mysql-test/t/subselect.test:
Don't use table t1
sql/item.cc:
Indentation fix
sql/item.h:
optimize depending sub querys
sql/item_func.cc:
Remove warning for uninitalized data
sql/item_row.cc:
Remove warning
sql/item_strfunc.h:
Fixed memory overrun
sql/item_subselect.cc:
Better debugging names
sql/log_event.cc:
Move tmp_table_used to THD
sql/sql_base.cc:
Move tmp_table_used to THD
sql/sql_class.cc:
Move tmp_table_used to THD
sql/sql_class.h:
Move tmp_table_used to THD
sql/sql_lex.cc:
Move tmp_table_used to THD
sql/sql_lex.h:
Move tmp_table_used to THD
sql/sql_parse.cc:
Move tmp_table_used to THD
sql/sql_select.cc:
optimize depending sub querys
sql/sql_table.cc:
Move tmp_table_used to THD
Diffstat (limited to 'sql/item.h')
-rw-r--r-- | sql/item.h | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/sql/item.h b/sql/item.h index 8c7914cefeb..531817c4844 100644 --- a/sql/item.h +++ b/sql/item.h @@ -102,6 +102,7 @@ public: virtual void save_in_result_field(bool no_conversions) {} virtual void no_rows_in_result() {} virtual Item *copy_or_same(THD *thd) { return this; } + virtual Item *real_item() { return this; } virtual Item *get_tmp_table_item(THD *thd) { return copy_or_same(thd); } virtual bool binary() const @@ -468,9 +469,10 @@ class Item_ref :public Item_ident public: Field *result_field; /* Save result here */ Item **ref; - Item_ref(char *db_par,char *table_name_par,char *field_name_par) + Item_ref(const char *db_par, const char *table_name_par, + const char *field_name_par) :Item_ident(db_par,table_name_par,field_name_par),ref(0) {} - Item_ref(Item **item, char *table_name_par,char *field_name_par) + Item_ref(Item **item, const char *table_name_par, const char *field_name_par) :Item_ident(NullS,table_name_par,field_name_par),ref(item) {} // Constructor need to process subselect with temporary tables (see Item) Item_ref(THD *thd, Item_ref &item) @@ -521,6 +523,7 @@ public: { (*ref)->save_in_field(result_field, no_conversions); } + Item *real_item() { return *ref; } }; class Item_in_subselect; @@ -530,7 +533,7 @@ protected: Item_in_subselect* owner; public: Item_ref_null_helper(Item_in_subselect* master, Item **item, - char *table_name_par, char *field_name_par): + const char *table_name_par, const char *field_name_par): Item_ref(item, table_name_par, field_name_par), owner(master) {} double val(); longlong val_int(); |