Re: Bug in autovacuum.c? - Mailing list pgsql-hackers

From Bruce Momjian
Subject Re: Bug in autovacuum.c?
Date
Msg-id 201104011400.p31E0w511378@momjian.us
Whole thread Raw
In response to Re: Bug in autovacuum.c?  (Greg Stark <gsstark@mit.edu>)
List pgsql-hackers
Greg Stark wrote:
> On Thu, Mar 31, 2011 at 10:59 PM, Bruce Momjian <bruce@momjian.us> wrote:
> > OK, just keep going below 100:
> >
> > ? ? ? ?105 -> 5
> > ? ? ? ?104 -> 4
> > ? ? ? ?103 -> 3
> > ? ? ? ?102 -> max_xid
> > ? ? ? ?101 -> max_xid - 1
> > ? ? ? ?100 -> max_xid - 2
> > ? ? ? ? 99 -> max_id
> > ? ? ? ? 98 -> max_id -1
> 
> Yeah, I think this is what the code is doing.
> 
> >
> > Wouldn't you rather:
> >
> > ? ? ? ?105 -> 5
> > ? ? ? ?104 -> 4
> > ? ? ? ?103 -> 3
> > ? ? ? ?102 -> 3
> > ? ? ? ?101 -> 3
> > ? ? ? ?100 -> 3
> > ? ? ? ? 99 -> max_id
> > ? ? ? ? 98 -> max_id -1
> >
> 
> I think I would expect
> 
> > ? ? ? ?105 -> 5
> > ? ? ? ?104 -> 4
> > ? ? ? ?103 -> 3
> > ? ? ? ?102 -> max_id
> > ? ? ? ?101 -> max_id-1
> > ? ? ? ?100 -> max_id-2
> > ? ? ? ? 99 -> max_id-3
> 
> But it doesn't really matter either way, does it? We don't even allow
> setting vacuum_max_freeze_age to 2^31-1 or any value that would be
> close to triggering a problem here.

It doesn't need to be that high because it is subtracted from the
current xid counter, so if vacuum_max_freeze_age is 100, and the xid
counter is 101, we see the problem.

--  Bruce Momjian  <bruce@momjian.us>        http://momjian.us EnterpriseDB
http://enterprisedb.com
 + It's impossible for everything to be true. +


pgsql-hackers by date:

Previous
From: Heikki Linnakangas
Date:
Subject: Re: edb-postgres.exe has encountered a problem on windows
Next
From: Rushabh Lathia
Date:
Subject: Re: edb-postgres.exe has encountered a problem on windows