"Christopher Kings-Lynne" <[EMAIL PROTECTED]> writes: >> No, VACUUM has the same transactional constraints as everyone else >> (unless you'd like a crash during VACUUM to trash your table...)
> Seriously, you can run VACUUM in a transaction and rollback the movement of > a tuple on disk? What do you mean by same transactional constraints? In VACUUM FULL, tuples moved to compact the table aren't good until you commit. In this hypothetical column-drop-implementing VACUUM, I think there'd need to be some similar rule --- otherwise it's not clear what happens to TOASTED data if you crash partway through. (In particular, if we tried overwriting main tuples in place as Hannu was suggesting, we'd need a way of being certain the deletion of the corresponding TOAST rows occurs *before* we overwrite the only reference to them.) regards, tom lane ---------------------------(end of broadcast)--------------------------- TIP 5: Have you checked our extensive FAQ? http://www.postgresql.org/users-lounge/docs/faq.html