Re: pg_dump --with-* options
Fujii Masao <masao.fujii@oss.nttdata.com>
From: Fujii Masao <masao.fujii@oss.nttdata.com>
To: Peter Eisentraut <peter@eisentraut.org>,
Nathan Bossart <nathandbossart@gmail.com>
Cc: pgsql-hackers <pgsql-hackers@postgresql.org>, pgsql@j-davis.com
Date: 2025-06-12T14:41:13Z
Lists: pgsql-hackers
On 2025/06/12 22:47, Peter Eisentraut wrote: > On 06.06.25 17:39, Nathan Bossart wrote: >> On Fri, Jun 06, 2025 at 09:14:32AM +0200, Peter Eisentraut wrote: >>> We have >>> >>> -a, --data-only dump only the data, not the schema or statistics >>> --no-data do not dump data >>> --with-data dump the data # this one is new >>> >>> (and there is also --section=data), and then three analogous options for >>> "schema" and "statistics". >>> >>> What is the purpose of the --with-data option? Dumping the data is the >>> default. Is this to override an earlier --no-data option? >> >> I believe the idea is that these will allow folks to be explicit about what >> they want instead of needing to understand the defaults for every >> component. > > I get that idea, but we really need some more documentation for this, I think. So far I could only guess how this is supposed to be used, and I also happened to guess wrong. > > My initial guess was that --with-data can override --no-data. That would have been pretty standard "last option wins" behavior. But pg_dump rejects that. Personally, I think that is kind of wrong. > > But you can use --with-data to override, say, --schema-only. That also seems kind of wrong to me, but anyway. While testing pg_dump --with-* in relation to bug #18952 [1], I also ran into this behavior. It was surprising, as I expected pg_dump to reject that combination of options. The current behavior seems confusing. Regards, [1] https://postgr.es/m/18952-be40a620f8b1e755@postgresql.org -- Fujii Masao NTT DATA Japan Corporation
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