Re: VACUUM/ANALYZE counting of in-doubt tuples

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Simon Riggs <simon(at)2ndquadrant(dot)com>
Cc: Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: VACUUM/ANALYZE counting of in-doubt tuples
Date: 2007-11-19 18:33:03
Message-ID: 3125.1195497183@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Simon Riggs <simon(at)2ndquadrant(dot)com> writes:
> On Mon, 2007-11-19 at 10:38 -0500, Tom Lane wrote:
>> The race conditions are a lot more subtle than that. The stats
>> collector cannot know when it receives a tabstat message after VACUUM
>> starts whether VACUUM has/will see the tuples involved, or whether it
>> will see them as committed or not. That would depend on whether VACUUM
>> has yet reached the page(s) the tuples are in.

> I think the before-and-after approach can be made to work:

> VACUUM just needs to save the counter in memory, it doesn't need to
> write that anywhere else.

> VACUUM can force the flush of the tabstat file so that there is no race
> condition, or at least a minimised one.

I don't think you understood what I said at all. The race condition is
not "before vs after VACUUM starts", it is "before vs after when VACUUM
scans the page that the in-doubt tuple is in".

regards, tom lane

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2007-11-19 18:37:48 Re: [HACKERS] fulltext parser strange behave
Previous Message Simon Riggs 2007-11-19 18:00:31 Re: VACUUM/ANALYZE counting of in-doubt tuples