Re: Why pg_dump overwrites dump file?
Daniel Gustafsson <daniel@yesql.se>
From: Daniel Gustafsson <daniel@yesql.se>
To: Chao Li <li.evan.chao@gmail.com>
Cc: Postgres hackers <pgsql-hackers@lists.postgresql.org>
Date: 2025-10-14T08:44:37Z
Lists: pgsql-hackers
Attachments
- pg_dump_emptydir.diff (application/octet-stream) patch
> On 14 Oct 2025, at 07:42, Chao Li <li.evan.chao@gmail.com> wrote: > Behaviors of the two types of pg_dump are inconsistent, I wonder if that’s by design? It does admittedly seem odd that --file works differently for files and directories, but at this point it might be behavior that users expect and changing it might break current usecases? Not sure what the best option is here. Another inconsistency is that the documentation states this: "In this case the directory is created by pg_dump and must not exist before." ..which isn't true, since it will happily reuse an existing directory as long as it's empty, the comment in the code makes the intention clear: /* * create_or_open_dir * * This will create a new directory with the given dirname. If there is * already an empty directory with that name, then use it. */ So regardless it seems we should something like the attached at least. -- Daniel Gustafsson
Commits
-
doc: Fix incorrect wording for --file in pg_dump
- 07961ef86625 19 (unreleased) landed