On Mon, Mar 24, 2025 at 11:12 AM Nikolay Shaplov <dhyan@nataraj.su> wrote: > Nobody would guess that > > ALTER TABLE test SET (vacuum_truncate=false); > means "off" > > and > ALTER TABLE test RESET (vacuum_truncate); > means "system_default" > > This will lead to a lot of confusion.
I agree that this confuses people, but I don't think it's more confusing here than for other vacuum reloptions. I have seen people try to unset vacuum reloptions by using SET to configure them to the default value rather than by using RESET to remove them. But then later they change the system default and that table is still nailed to the old default. I always find myself slightly bemused by this, because it doesn't seem that hard to me to figure out how it actually works, but it's definitely a real issue. However, I don't see why the issue is any more acute for this parameter than any other, and it certainly does not seem like a good idea to make this parameter work differently from the other ones.