From: | Robert Haas <robertmhaas(at)gmail(dot)com> |
---|---|
To: | Bruce Momjian <bruce(at)momjian(dot)us> |
Cc: | Alvaro Herrera <alvherre(at)commandprompt(dot)com>, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: Bug in autovacuum.c? |
Date: | 2011-03-31 19:14:47 |
Message-ID: | AANLkTin9FMR=9FwJAhaWptF2xAagA8yy6=QBLFEC-5gq@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Thu, Mar 31, 2011 at 2:59 PM, Bruce Momjian <bruce(at)momjian(dot)us> wrote:
> Bruce Momjian wrote:
>> > Yeah, I think this change would have the effect of moving the freeze
>> > limit by one (or two?) counts. Given the moving nature of values
>> > returned by ReadNewTransactionId this would probably have no practical
>> > effect. Still, the code as is seems more natural to me (Tom wrote this
>> > bit IIRC, not me).
>>
>> I am now thinking the code is correct --- it maps values from 0 to
>> FirstNormalTransactionId into the top of the (unsigned) xid range.
>> Unless someone objects, I will add a C comment about this behavior so
>> future readers are not confused.
>
> OK, now I think it is wrong. :-)
>
> The effect is to map max xid + 1 to max xid -
> FirstNormalTransactionId(3) + 1, which makes the xid look like it is
> going backwards, less than max xid --- not good.
The XID space is *circular*.
--
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company
From | Date | Subject | |
---|---|---|---|
Next Message | Peter Eisentraut | 2011-03-31 19:38:11 | Windows build issues |
Previous Message | Kevin Grittner | 2011-03-31 19:06:53 | Re: SSI bug? |