Re: autovacuum truncate exclusive lock round two - Mailing list pgsql-hackers

From Tom Lane
Subject Re: autovacuum truncate exclusive lock round two
Date
Msg-id 26446.1351172759@sss.pgh.pa.us
Whole thread Raw
In response to Re: autovacuum truncate exclusive lock round two  (Jan Wieck <JanWieck@Yahoo.com>)
Responses Re: autovacuum truncate exclusive lock round two
List pgsql-hackers
Jan Wieck <JanWieck@Yahoo.com> writes:
> On 10/24/2012 10:46 PM, Stephen Frost wrote:
>> Would it be possible to use the FSM to figure out if things have changed
>> since the last scan..?  Does that scan update the FSM, which would then
>> be updated by another backend in the event that it decided to write
>> something there?  Or do we consider the FSM to be completely
>> untrustworthy wrt this (and if so, I don't suppose there's any hope to
>> using the visibility map...)?

> I honestly don't know if we can trust the FSM enough when it comes to 
> throwing away heap pages. Can we?

No.  Backends are under no obligation to update FSM for each individual
tuple insertion, and typically don't do so.

More to the point, you have to take AccessExclusiveLock *anyway*,
because this is interlocking not only against new insertions but plain
read-only seqscans: if a seqscan falls off the end of the table it will
be very unhappy.  So I don't see where we'd buy anything by consulting
the FSM.
        regards, tom lane



pgsql-hackers by date:

Previous
From: Alvaro Herrera
Date:
Subject: unfixed bugs with extensions
Next
From: Tom Lane
Date:
Subject: Re: unfixed bugs with extensions