From e6a6382f15834943ce3814e4f30debe58076e24d Mon Sep 17 00:00:00 2001 From: Monty Date: Sun, 7 Jun 2020 16:23:44 +0300 Subject: Don't allow illegal create options for SEQUENCE MDEV-19977 Assertion `(0xFUL & mode) == LOCK_S || (0xFUL & mode) == LOCK_X' failed in lock_rec_lock --- sql/sql_sequence.cc | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'sql/sql_sequence.cc') diff --git a/sql/sql_sequence.cc b/sql/sql_sequence.cc index 96c1cd19433..68d9efb3093 100644 --- a/sql/sql_sequence.cc +++ b/sql/sql_sequence.cc @@ -203,6 +203,11 @@ bool check_sequence_fields(LEX *lex, List *fields) reason= "Sequence tables cannot have any keys"; goto err; } + if (lex->alter_info.check_constraint_list.elements > 0) + { + reason= "Sequence tables cannot have any constraints"; + goto err; + } for (field_no= 0; (field= it++); field_no++) { @@ -210,7 +215,8 @@ bool check_sequence_fields(LEX *lex, List *fields) if (my_strcasecmp(system_charset_info, field_def->field_name, field->field_name.str) || field->flags != field_def->flags || - field->type_handler() != field_def->type_handler) + field->type_handler() != field_def->type_handler || + field->check_constraint || field->vcol_info) { reason= field->field_name.str; goto err; -- cgit v1.2.1