diff options
author | Sergei Golubchik <serg@mariadb.org> | 2021-02-04 16:06:54 +0100 |
---|---|---|
committer | Sergei Golubchik <serg@mariadb.org> | 2021-02-07 16:22:11 +0100 |
commit | ef5adf520760536c7396bdfe884fc509ac065694 (patch) | |
tree | 8b4074b80354de5126ce4604321874b439e03ec8 /mysql-test/main/check_constraint.test | |
parent | c2c23e598d49fc991b34853d864c77d02741b61c (diff) | |
download | mariadb-git-ef5adf520760536c7396bdfe884fc509ac065694.tar.gz |
MDEV-24274 ALTER TABLE with CHECK CONSTRAINTS gives "Out of Memory" error
partially revert 76063c2a13. Item::clone() is not an all-purpose
Item copying machine, it was specifically created for pushdown
of predicates into derived tables and views and it does not
copy everything. In particular, it does not copy Item_func_regex.
Fix the bug differently by preserving the old constraint name.
But keep setting automatic_name=true to have it regenerated
for cases like ALTER TABLE ... ADD CONSTRAINT.
Diffstat (limited to 'mysql-test/main/check_constraint.test')
-rw-r--r-- | mysql-test/main/check_constraint.test | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/mysql-test/main/check_constraint.test b/mysql-test/main/check_constraint.test index 93538fd1666..1258a9e3be6 100644 --- a/mysql-test/main/check_constraint.test +++ b/mysql-test/main/check_constraint.test @@ -176,3 +176,11 @@ select * from t1 where a is null; --error ER_CONSTRAINT_FAILED insert t1 (b) values (1); drop table t1; + +--echo # +--echo # MDEV-24274 ALTER TABLE with CHECK CONSTRAINTS gives "Out of Memory" error +--echo # +create table t1 (id varchar(2), constraint id check (id regexp '[a-z]')); +alter table t1 force; +show create table t1; +drop table t1; |