mlw <markw@mohawksoft.com> writes:
> ... people looked at me like I had two heads when I told them about
> "vacuum." It wasn't obvious to them what it did.
I won't dispute that, but changing a command name that's been around for
ten or fifteen years strikes me as a recipe for more confusion, not
less.
> However, saying that VACUUM NOLOCK and VACUUM LOCK do "more-or-less
> the same thing" really isn't so. Think about it, the VACUUM LOCK,
> practically rebuilds a tables representation,
It does no such thing. The only difference is that it's willing to move
a few tuples around if it can thereby free up (and truncate) whole pages
at the end of the table. (In a live system you'd better hope it's only
a few tuples, anyway ;-) ... or you'll be waiting a long time.) It
doesn't even do a complete defrag; it stops moving tuples as soon as it
finds that it won't be able to truncate the table any further. So
there's *not* that much difference.
> VACUUM DEFRAG?
> VACUUM COMPRESS?
While these look kinda ugly to me, I can find no stronger objection than
that. (Well, maybe I could complain that these overstate what old-style
vacuum actually does, but that's even weaker.) What do other people
think?
regards, tom lane