Re: vacuumdb: add --dry-run
Nathan Bossart <nathandbossart@gmail.com>
From: Nathan Bossart <nathandbossart@gmail.com>
To: Corey Huinker <corey.huinker@gmail.com>
Cc: pgsql-hackers@postgresql.org
Date: 2025-11-10T21:19:23Z
Lists: pgsql-hackers
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Add ParallelSlotSetIdle().
- 750816971b35 19 (unreleased) landed
-
vacuumdb: Add --dry-run.
- d107176d27c7 19 (unreleased) landed
-
vacuumdb: Move some variables to the vacuumingOptions struct.
- cf1450e57799 19 (unreleased) landed
-
Log a note at program start when running in dry-run mode
- c05dee191125 19 (unreleased) cited
On Mon, Nov 10, 2025 at 02:44:41PM -0500, Corey Huinker wrote: > This is a small patch to add a new option to vacuumdb to answer the > question "what commands will actually be run by this combination of > command-line switches against this database?" without actually running the > commands. My attempts to test this all got stuck in wait_on_slots(). I haven't looked too closely, but I suspect the issue is that the socket never becomes readable because we don't send a query. If I set free_slot->inUse to false before printing the command, it no longer hangs. We probably want to create a function in parallel_slot.c to mark slots that we don't intend to give a query as idle. -- nathan