summaryrefslogtreecommitdiff
path: root/mysql-test/t/parser.test
diff options
context:
space:
mode:
authorSergei Golubchik <serg@mariadb.org>2017-02-09 12:06:15 +0100
committerSergei Golubchik <serg@mariadb.org>2017-02-13 18:12:15 +0100
commit1afb11074ea2f156dcfda7c28b9e7e47eb68c5ba (patch)
tree0ad7c12ce5399f82256ac772f5dd8c66bddeed27 /mysql-test/t/parser.test
parentca503e830b68941113c75f781bee365a35d268d3 (diff)
downloadmariadb-git-1afb11074ea2f156dcfda7c28b9e7e47eb68c5ba.tar.gz
MDEV-11582 InnoDB: Failing assertion: !((field)->vcol_info && !(field)->stored_in_db())
change the parser not to allow SERIAL as a normal data type. make a special rule for it, where it could be used for define fields, but not generated fields, not return type of a stored function, etc.
Diffstat (limited to 'mysql-test/t/parser.test')
-rw-r--r--mysql-test/t/parser.test20
1 files changed, 20 insertions, 0 deletions
diff --git a/mysql-test/t/parser.test b/mysql-test/t/parser.test
index 1fa7df7fc3d..4bd594bdf8e 100644
--- a/mysql-test/t/parser.test
+++ b/mysql-test/t/parser.test
@@ -1321,3 +1321,23 @@ UNION
SELECT 1;
DROP TABLE t1;
+
+#
+# MDEV-11582 InnoDB: Failing assertion: !((field)->vcol_info && !(field)->stored_in_db())
+#
+--error ER_PARSE_ERROR
+create table t1 (a serial null);
+--error ER_PARSE_ERROR
+create table t1 (a serial auto_increment);
+--error ER_PARSE_ERROR
+create table t1 (a serial serial default value);
+--error ER_PARSE_ERROR
+create table t1 (a serial collate binary);
+--error ER_PARSE_ERROR
+create table t1 (i int, vc serial as (i));
+--error ER_PARSE_ERROR
+create function fs() returns serial return 1;
+
+create table t1 ( id serial );
+show create table t1;
+drop table t1;