From 1afb11074ea2f156dcfda7c28b9e7e47eb68c5ba Mon Sep 17 00:00:00 2001 From: Sergei Golubchik Date: Thu, 9 Feb 2017 12:06:15 +0100 Subject: 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. --- mysql-test/t/parser.test | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'mysql-test/t/parser.test') 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; -- cgit v1.2.1