diff options
author | bell@sanja.is.com.ua <> | 2004-02-08 20:14:13 +0200 |
---|---|---|
committer | bell@sanja.is.com.ua <> | 2004-02-08 20:14:13 +0200 |
commit | 69e2460bd4f5c122017a281e8fdbbc6dedb5a671 (patch) | |
tree | 14b2b58964802549177419493c886e1dd62be7e3 /sql/sql_class.h | |
parent | 8eb590a71ec484146432cf6ae37d51fe4e6f814b (diff) | |
download | mariadb-git-69e2460bd4f5c122017a281e8fdbbc6dedb5a671.tar.gz |
fixed subquery with PS (BUG#2462)
fixed UNION preparation
Diffstat (limited to 'sql/sql_class.h')
-rw-r--r-- | sql/sql_class.h | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/sql/sql_class.h b/sql/sql_class.h index 7971137d848..fbe42c9876e 100644 --- a/sql/sql_class.h +++ b/sql/sql_class.h @@ -427,7 +427,7 @@ class Statement public: /* FIXME: must be private */ LEX main_lex; -public: + /* Uniquely identifies each statement object in thread scope; change during statement lifetime. FIXME: must be const @@ -476,7 +476,7 @@ public: char *query; uint32 query_length; // current query length /* - List of items created in the parser for this query. Every item puts + List of items created in the parser for this query. Every item puts itself to the list on creation (see Item::Item() for details)) */ Item *free_list; @@ -503,6 +503,15 @@ public: void set_statement(Statement *stmt); /* return class type */ virtual Type type() const; + + void set_n_backup_item_arena(Statement *set, Statement *backup); + inline void restore_backup_item_arena(Statement *backup) + { + set_item_arena(backup); + // reset backup mem_root to avoid its freeing + init_alloc_root(&backup->mem_root, 0, 0); + } + void set_item_arena(Statement *set); }; @@ -689,6 +698,10 @@ public: Vio* active_vio; #endif /* + Current prepared Statement if there one, or 0 + */ + Statement *current_statement; + /* next_insert_id is set on SET INSERT_ID= #. This is used as the next generated auto_increment value in handler.cc */ |