summaryrefslogtreecommitdiff
path: root/sql/sql_base.cc
diff options
context:
space:
mode:
authorunknown <Sinisa@sinisa.nasamreza.org>2001-08-18 15:29:21 +0300
committerunknown <Sinisa@sinisa.nasamreza.org>2001-08-18 15:29:21 +0300
commite3a9e7e40e63e8bed554cfbceacf29490df1a14a (patch)
tree35de6d990347d36ed98c291f451de3d5c41dc151 /sql/sql_base.cc
parent12d4a5efe938688ef935818d22880137c95c2bfc (diff)
downloadmariadb-git-e3a9e7e40e63e8bed554cfbceacf29490df1a14a.tar.gz
New startup options and some cleanups
BitKeeper/etc/ignore: Added =6 to the ignore list include/mysqld_error.h: Error message for no-mixing of table types.. sql/mysql_priv.h: New option sql/mysqld.cc: New option sql/share/english/errmsg.txt: Error message for no-mixing of table types.. sql/sql_base.cc: Checking of the mixing of table types sql/sql_parse.cc: some fixes
Diffstat (limited to 'sql/sql_base.cc')
-rw-r--r--sql/sql_base.cc12
1 files changed, 12 insertions, 0 deletions
diff --git a/sql/sql_base.cc b/sql/sql_base.cc
index 2a9043cc0d7..0198f0ce176 100644
--- a/sql/sql_base.cc
+++ b/sql/sql_base.cc
@@ -1368,6 +1368,18 @@ int open_tables(THD *thd,TABLE_LIST *start)
tables->table->reginfo.lock_type=tables->lock_type;
tables->table->grant= tables->grant;
}
+ if (opt_no_mix_types && start)
+ {
+ bool checking; TABLE_LIST *tl;
+ for (tl=start, checking = tl->table->file->has_transactions(), tl=tl->next; tl ; tl=tl->next)
+ {
+ if (((tl->table->file->has_transactions()) ^ checking))
+ {
+ send_error(&thd->net,ER_MIXING_NOT_ALLOWED);
+ DBUG_RETURN(-1);
+ }
+ }
+ }
thd->proc_info=0;
DBUG_RETURN(result);
}