On Wed, Nov 19, 2025 at 05:23:48PM -0500, Corey Huinker wrote: > Now with zero hangs and some test cases. I didn't create a function (yet) > as it seemed trivial.
I still think it could be worth moving the dry-run code into run_vacuum_command() (which might entail moving the calls to ParallelSlotSetHandler() there, too). We can probably piggy-back on the "if (echo)" branch in that function.
We _could_ get away with moving ParallelSlotGetIdle() in there too. The only catch would be that we'd have to refactor prepare_vacuum_command() to take a serverVersionNumber parameter instead of the whole connection. Thoughts?
Also, we can probably skip the executeCommand() calls for --analyze-in-stages.
+1
Here's a shopping list of incremental changes. I'm happy with whatever makes the most sense to you.