MERGE lacks ruleutils.c decompiling support!?

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: pgsql-hackers(at)lists(dot)postgresql(dot)org
Subject: MERGE lacks ruleutils.c decompiling support!?
Date: 2023-05-05 13:36:41
Message-ID: 3579737.1683293801@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

I made this function:

CREATE OR REPLACE FUNCTION test_fun()
RETURNS void
LANGUAGE SQL
BEGIN ATOMIC
MERGE INTO target
USING source s on s.id = target.id
WHEN MATCHED THEN
UPDATE SET data = s.data
WHEN NOT MATCHED THEN
INSERT VALUES (s.id, s.data);
end;

It appears to work fine, but:

regression=# \sf+ test_fun()
ERROR: unrecognized query command type: 5

and it also breaks pg_dump. Somebody screwed up pretty badly
here. Is there any hope of fixing it for Monday's releases?

(I'd guess that decompiling the WHEN clause would take a nontrivial
amount of new code, so maybe fixing it on such short notice is
impractical. But ugh.)

regards, tom lane

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Padmavathi G 2023-05-05 13:56:56 Re: Tables getting stuck at 's' state during logical replication
Previous Message Andrew Dunstan 2023-05-05 13:23:37 Re: Add LZ4 compression in pg_dump