Re: MERGE lacks ruleutils.c decompiling support!?
От | Alvaro Herrera |
---|---|
Тема | Re: MERGE lacks ruleutils.c decompiling support!? |
Дата | |
Msg-id | 20230505162130.jcotfjoklniro2iq@alvherre.pgsql обсуждение исходный текст |
Ответ на | MERGE lacks ruleutils.c decompiling support!? (Tom Lane <tgl@sss.pgh.pa.us>) |
Список | pgsql-hackers |
On 2023-May-05, Tom Lane wrote: > 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.) Hmm, there is *some* code in ruleutils for MERGE, but clearly something is missing. Let me have a look ... -- Álvaro Herrera PostgreSQL Developer — https://www.EnterpriseDB.com/
В списке pgsql-hackers по дате отправления: