mirror of
https://github.com/postgres/postgres.git
synced 2025-08-09 17:03:00 +03:00
Fix test case to do what it intends to
This test case intended to fail because setting a column as generated to
the partitioned table while leaving the partition alone is not allowed;
but instead failed because of a discrepancy of not-null constraint. Fix
this by adding the not-null constraint first, then set the column as
generated in a separate ALTER TABLE command, which gets the expected
error. Also, because the next test also wants to set the column as
not-null, add a BEGIN/ROLLBACK block so that the added not-null is
removed.
Oversight in 6995863157
.
This commit is contained in:
@@ -756,11 +756,13 @@ ALTER TABLE pitest3_p1
|
||||
ALTER COLUMN f3 ADD GENERATED ALWAYS AS IDENTITY (START WITH 3);
|
||||
ERROR: cannot add identity to a column of a partition
|
||||
-- fails, changing only the partitioned table not allowed
|
||||
BEGIN;
|
||||
ALTER TABLE pitest3_p1 ALTER COLUMN f3 SET NOT NULL;
|
||||
ALTER TABLE ONLY pitest3
|
||||
ALTER COLUMN f3 SET NOT NULL,
|
||||
ALTER COLUMN f3 ADD GENERATED ALWAYS AS IDENTITY (START WITH 3);
|
||||
ERROR: constraint must be added to child tables too
|
||||
ERROR: cannot add identity to a column of only the partitioned table
|
||||
HINT: Do not specify the ONLY keyword.
|
||||
ROLLBACK;
|
||||
ALTER TABLE pitest3
|
||||
ALTER COLUMN f3 SET NOT NULL,
|
||||
ALTER COLUMN f3 ADD GENERATED ALWAYS AS IDENTITY (START WITH 3);
|
||||
|
@@ -418,9 +418,11 @@ ALTER TABLE pitest3_p1
|
||||
ALTER COLUMN f3 SET NOT NULL,
|
||||
ALTER COLUMN f3 ADD GENERATED ALWAYS AS IDENTITY (START WITH 3);
|
||||
-- fails, changing only the partitioned table not allowed
|
||||
BEGIN;
|
||||
ALTER TABLE pitest3_p1 ALTER COLUMN f3 SET NOT NULL;
|
||||
ALTER TABLE ONLY pitest3
|
||||
ALTER COLUMN f3 SET NOT NULL,
|
||||
ALTER COLUMN f3 ADD GENERATED ALWAYS AS IDENTITY (START WITH 3);
|
||||
ROLLBACK;
|
||||
ALTER TABLE pitest3
|
||||
ALTER COLUMN f3 SET NOT NULL,
|
||||
ALTER COLUMN f3 ADD GENERATED ALWAYS AS IDENTITY (START WITH 3);
|
||||
|
Reference in New Issue
Block a user