The following bug has been logged on the website:
Bug reference: 18871
Logged by: Alexander Lakhin
Email address: exclusion@gmail.com
PostgreSQL version: 17.4
Operating system: Ubuntu 24.04
Description:
The following script:
CREATE TABLE pt(a int, b int) PARTITION BY LIST(a);
CREATE TABLE p1 PARTITION OF pt FOR VALUES IN (a);
MERGE INTO pt USING (SELECT 2 AS a) AS q ON pt.a = q.a
WHEN NOT MATCHED THEN INSERT VALUES (1, 2)
WHEN MATCHED THEN DO NOTHING;
fails with:
ERROR: XX000: unknown action in MERGE WHEN clause
LOCATION: ExecInitPartitionInfo, execPartition.c:962
This error is triggered on REL_15_STABLE (starting from bf5c4b3d9) ..
master.
Before bf5c4b3d9, the MERGE produced ERROR: variable not found in subplan
target lists.
This anomaly is discovered with SQLsmith.