On Tue, 2008-10-28 at 10:10 +0000, Simon Riggs wrote: > On Tue, 2008-10-28 at 11:45 +0200, Hannu Krosing wrote: > > On Tue, 2008-10-28 at 08:49 +0000, Simon Riggs wrote: > > > Looking at a VACUUM's WAL records makes me think twice about the way we > > > issue a VACUUM. > > > > > > 1. First we scan the heap, issuing a HEAP2 clean record for every block > > > that needs cleaning. > > > > IIRC the first heap pass just collects info and does nothing else. > > Is this just an empty/do-nothing WAL record ? > > 8.3 changed that; it used to work that way. I guess I never looked at > the amount of WAL being generated.
I can't see how it is safe to do anything more than just lookups on first pass. There will be dangling index pointers if the system crashes/is rebooted or the vacuum is just interrupted after cleaning some heap pages but before cleaning corresponding index pages. --------------- Hannu -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers