Re: pg_dump --with-* options
Peter Eisentraut <peter@eisentraut.org>
From: Peter Eisentraut <peter@eisentraut.org>
To: Jeff Davis <pgsql@j-davis.com>, Nathan Bossart <nathandbossart@gmail.com>
Cc: pgsql-hackers <pgsql-hackers@postgresql.org>
Date: 2025-06-13T05:22:13Z
Lists: pgsql-hackers
On 12.06.25 23:20, Jeff Davis wrote: > On Thu, 2025-06-12 at 21:16 +0200, Peter Eisentraut wrote: >>> Do we have other options that are order-sensitive? >> >> I think most of them are. For example: >> >> psql -p 5432 -p 5433 >> initdb --data-checksums --no-data-checksums >> postgres --shared-buffers=1GB --shared-buffers=2GB > > Interesting. I don't think the "last option wins" model applies to > other pg_dump options, though. For instance, in PG17: > > pg_dump --data-only --schema-only > pg_dump: error: options -s/--schema-only and -a/--data-only cannot be > used together > > I don't think it's simple to start using "last option wins" behavior > now. There are probably some combinations of options where it's not > clear whether a later option is an extra constraint or will override a > previous option. It makes sense to raise an error if the specified options cannot be consolidated in an obvious way. I'd expect pg_recvlogical --create-slot --drop-slot to fail, but I'd expect pg_recvlogical --create-slot --slot=foo --slot=bar to work. One of the challenges in the current case is that it is not obvious how --with-data, --no-data, --data-only etc. are connected. If that were clearer, then the way these options should combine or conflict would hopefully follow somewhat naturally.
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Simplify options in pg_dump and pg_restore.
- 6a46089e458f 19 (unreleased) landed
- a3e8dc143862 18.0 landed
-
pg_dump: reject combination of "only" and "with"
- 0ed92cf50cc4 19 (unreleased) landed
- 60121890f7f2 18.0 landed
-
Change pg_dump default for statistics export.
- 34eb2a80d5a3 18.0 cited