Laurenz Albe <laurenz.a...@cybertec.at> writes: > On Sat, 2025-05-03 at 22:47 -0700, Tanin Na Nakorn wrote: >> Here's the patch (against the latest master) that will make pg_dump support >> "on conflict do update" . >> >> There are 3 caveats: >> >> 1. The "on conflict do update" would apply to every table. In my opinion, >> this is fine.
> I don't think that is fine. I think it would make the feature unusable for > most cases. > At the very least, there would have to be a way to specify which tables are > affected. Yeah. I kind of feel that this entire idea is misguided. pg_dump is not an ETL tool, and bolting ETL-ish features onto it one at a time seems destined to end in a mess. But it's particularly awful that the proposed switch design would apply to all tables. That pretty much makes it useless except in a dump that selects only one table. It's also useless except in a --data-only dump, since if we create the target table then we know perfectly well that it's empty to start with. So at this point you barely need pg_dump at all, as opposed to some other tool that does a light syntactic transformation on the result of COPY. I think it could be interesting to try to build something that *is* an ETL tool and is meant for cases like partial data loads. But pg_dump is serving more than enough masters already. Let's not add this to its plate. regards, tom lane