Re: [GENERAL] VACUUM touching file but not updating relation - Mailing list pgsql-hackers

From Tom Lane
Subject Re: [GENERAL] VACUUM touching file but not updating relation
Date
Msg-id 16210.1321629526@sss.pgh.pa.us
Whole thread Raw
In response to Re: [GENERAL] VACUUM touching file but not updating relation  (Simon Riggs <simon@2ndQuadrant.com>)
Responses Re: [GENERAL] VACUUM touching file but not updating relation  (Simon Riggs <simon@2ndQuadrant.com>)
Re: [GENERAL] VACUUM touching file but not updating relation  (Simon Riggs <simon@2ndQuadrant.com>)
List pgsql-hackers
Simon Riggs <simon@2ndQuadrant.com> writes:
> On Fri, Nov 18, 2011 at 2:47 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
>> Well, it's expected given the current coding in the btree vacuum logic.
>> It's not clear to me why it was written like that, though.

> The code works as designed.

> _bt_delitems_vacuum() is only ever called with nitems == 0 when it is
> the last block of the relation with wal_level = hot standby

> As discussed in the comments we must issue a WAL record for the last
> block, whatever else has occurred.

> So the correct number of WAL records is emitted and I see no bug there.

What Thom's complaining about is that the buffer may be marked dirty
unnecessarily, ie when there has been no actual data change.

            regards, tom lane

pgsql-hackers by date:

Previous
From: Simon Riggs
Date:
Subject: Re: [GENERAL] VACUUM touching file but not updating relation
Next
From: Simon Riggs
Date:
Subject: Re: [GENERAL] VACUUM touching file but not updating relation