summaryrefslogtreecommitdiff
path: root/sql/table.h
diff options
context:
space:
mode:
Diffstat (limited to 'sql/table.h')
-rw-r--r--sql/table.h11
1 files changed, 9 insertions, 2 deletions
diff --git a/sql/table.h b/sql/table.h
index 497502b2d06..dd40b1760b4 100644
--- a/sql/table.h
+++ b/sql/table.h
@@ -860,7 +860,6 @@ struct TABLE_SHARE
/* This is set for temporary tables where CREATE was binary logged */
bool table_creation_was_logged;
bool non_determinstic_insert;
- bool vcols_need_refixing;
bool has_update_default_function;
bool can_do_row_logging; /* 1 if table supports RBR */
bool long_unique_table;
@@ -1492,8 +1491,15 @@ public:
*/
bool auto_increment_field_not_null;
bool insert_or_update; /* Can be used by the handler */
+ /*
+ NOTE: alias_name_used is only a hint! It works only in need_correct_ident()
+ condition. On other cases it is FALSE even if table_name is alias.
+
+ E.g. in update t1 as x set a = 1
+ */
bool alias_name_used; /* true if table_name is alias */
bool get_fields_in_item_tree; /* Signal to fix_field */
+ List<Virtual_column_info> vcol_refix_list;
private:
bool m_needs_reopen;
bool created; /* For tmp tables. TRUE <=> tmp table was actually created.*/
@@ -1689,7 +1695,8 @@ public:
TABLE *tmp_table,
TMP_TABLE_PARAM *tmp_table_param,
bool with_cleanup);
- int fix_vcol_exprs(THD *thd);
+ bool vcol_fix_expr(THD *thd);
+ bool vcol_cleanup_expr(THD *thd);
Field *find_field_by_name(LEX_CSTRING *str) const;
bool export_structure(THD *thd, class Row_definition_list *defs);
bool is_splittable() { return spl_opt_info != NULL; }