Details
-
Bug
-
Status: Closed (View Workflow)
-
Major
-
Resolution: Fixed
-
10.5.15, 10.5, 10.6, 10.7, 10.8
-
ubuntu 20.04(x86_64) + docker
Description
The following syntax fails on 10.5 and above.
CREATE TABLE t1(id1 int, id2 int, PRIMARY KEY (id1,id2)) ENGINE=InnoDB; |
INSERT t1 VALUES(1, 1); |
INSERT t1 SELECT id1, MAX(id2)+1 FROM t1 WHERE id1=1; |
mysql> CREATE TABLE t1(id1 int, id2 int, PRIMARY KEY (id1,id2));
|
Query OK, 0 rows affected (0.01 sec)
|
|
mysql> INSERT t1 VALUES(1, 1);
|
Query OK, 1 row affected (0.00 sec)
|
|
mysql> INSERT t1 SELECT id1, MAX(id2)+1 FROM t1 WHERE id1=1;
|
ERROR 1048 (23000): Column 'id2' cannot be null
|
I tryed it with the docker image below.
- mariadb:10.2 -> OK
- mariadb:10.3 -> OK
- mariadb:10.4 -> OK
- mariadb:10.5 -> NG
- mariadb:10.7 -> NG
- mariadb:10.8-rc -> NG
I also tried it on MyISAM and it worked fine.