summaryrefslogtreecommitdiff
path: root/sql/table.h
diff options
context:
space:
mode:
authorIgor Babaev <igor@askmonty.org>2012-02-22 13:04:58 -0800
committerIgor Babaev <igor@askmonty.org>2012-02-22 13:04:58 -0800
commit90c26209ba52cb7df75cf3464a7dde8bf47531b9 (patch)
treebc8b3f5226fdb97a2fc78cd1809d322d3f59cc82 /sql/table.h
parent56e1a6936bcdebb8fe672ea040235bfa9867e10e (diff)
parent567d871ff0c9cbdcaa4f9daa6810760edc901e14 (diff)
downloadmariadb-git-90c26209ba52cb7df75cf3464a7dde8bf47531b9.tar.gz
Merge.
Diffstat (limited to 'sql/table.h')
-rw-r--r--sql/table.h16
1 files changed, 13 insertions, 3 deletions
diff --git a/sql/table.h b/sql/table.h
index 3d0dd35b21f..4a1719073b8 100644
--- a/sql/table.h
+++ b/sql/table.h
@@ -1758,16 +1758,18 @@ struct TABLE_LIST
inline void set_merged_derived()
{
derived_type= ((derived_type & DTYPE_MASK) |
- DTYPE_TABLE | DTYPE_MERGE);
+ DTYPE_TABLE | DTYPE_MERGE);
+ set_check_merged();
}
inline bool is_materialized_derived()
{
return (derived_type & DTYPE_MATERIALIZE);
}
- inline void set_materialized_derived()
+ void set_materialized_derived()
{
derived_type= ((derived_type & DTYPE_MASK) |
- DTYPE_TABLE | DTYPE_MATERIALIZE);
+ DTYPE_TABLE | DTYPE_MATERIALIZE);
+ set_check_materialized();
}
inline bool is_multitable()
{
@@ -1808,9 +1810,17 @@ struct TABLE_LIST
int fetch_number_of_rows();
bool change_refs_to_fields();
+ bool single_table_updatable();
+
private:
bool prep_check_option(THD *thd, uint8 check_opt_type);
bool prep_where(THD *thd, Item **conds, bool no_where_clause);
+ void set_check_materialized();
+#ifndef DBUG_OFF
+ void set_check_merged();
+#else
+ inline void set_check_merged() {}
+#endif
/*
Cleanup for re-execution in a prepared statement or a stored
procedure.