On Wed, Apr 21, 2010 at 9:37 AM, Simon Riggs <simon(at)2ndquadrant(dot)com> wrote:
> On Wed, 2010-04-21 at 15:27 +0300, Heikki Linnakangas wrote:
>> Given the discussion about the cyclic nature of XIDs, it would be good
>> to add an assertion that when a new XID is added to the array, it is
>> a) larger than the biggest value already in the array
>> (TransactionIdFollows(new, head)), and
>> b) not too far from the smallest value in the array to confuse binary
>> search (TransactionIdFollows(new, tail)).
> We discussed this in November. You convinced me it isn't possible for
> older xids to stay in the standby because anti-wraparound vacuums would
> conflict and kick them out. The primary can't run with wrapped xids and
> neither can the standby. I think that is correct.
> Adding an assertion isn't going to do much because it's unlikely anybody
> is going to be running for 2^31 transactions with asserts enabled.
> Worrying about things like this seems strange when real and negative
> behaviours are right in our faces elsewhere. Performance and scalability
> are real world concerns.
I think the assert is a good idea. If there's no real problem here,
the assert won't trip. It's just a safety precaution.
In response to
pgsql-hackers by date
|Next:||From: Robert Haas||Date: 2010-04-21 14:11:00|
|Subject: Re: testing HS/SR - 1 vs 2 performance|
|Previous:||From: Marc G. Fournier||Date: 2010-04-21 13:41:37|
|Subject: Re: BETA|