On 5/24/2010 9:30 AM, Heikki Linnakangas wrote:
> On 22/05/10 16:35, Tom Lane wrote:
>> Josh Berkus<josh@agliodbs.com> writes:
>>> From a discussion at dinner at pgcon, I wanted to send this to the list
>>> for people to poke holes in it:
>>
>> Somebody (I think Joe or Heikki) poked a big hole in this last night at
>> the Royal Oak.
>
> Me.
>
>> Although the scheme would get rid of the need to replace
>> old XIDs with FrozenXid, it does not get rid of the need to set hint
>> bits before you can truncate CLOG.
>
> Hmm, we don't rely on setting hint bits to truncate CLOG anymore
> (http://archives.postgresql.org/pgsql-committers/2006-11/msg00026.php).
> It's the replacement of xids with FrozenXid that matters, the hint bits
> are really just hints.
>
> Doesn't change the conclusion, though: you still need to replace XIDs
> with FrozenXids to truncate the clog. Conceivably we could keep around
> more than 2^32 transactions in clog with this scheme, but then you need
> a lot more space for the clog. But perhaps it would be better to do that
> than to launch anti-wraparound vacuums, or to refuse more updates in the
> extreme cases.
Correct. The problem actually are aborted transactions. Just because an
XID is really old doesn't mean it was committed.
Jan
--
Anyone who trades liberty for security deserves neither
liberty nor security. -- Benjamin Franklin