On Wed, Apr 21, 2010 at 10:12 AM, Simon Riggs <simon(at)2ndquadrant(dot)com> wrote:
> On Wed, 2010-04-21 at 09:51 -0400, Robert Haas wrote:
>> > 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.
>> 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.
> If you believe that, then I think you should add this to all the other
> places in the current server where that assumption is made without
> assertion being added. As a safety precaution.
I feel like this conversation is getting a little heated. We are just
trying to solve a technical problem here. Perhaps I am misreading -
tone doesn't come through very well in email.
I think the assumptions that are being made in this particular case
are different from the ones made elsewhere in the server. Generally,
we don't assume transaction IDs are arriving in ascending order - in
fact, we usually explicitly have to deal with the fact that they might
not be. So if we have a situation where we ARE relying on them
arriving in order, because we have extrinsic reasons why we know it
has to happen that way, adding an assertion to make sure that things
are happening the way we expect doesn't seem out of line. This code
is fairly complex.
There is arguably less value in asserting that the newly added xid
follows the tail as well as the head, but I still like the idea. Not
sure whether that's rational or not.
In response to
pgsql-hackers by date
|Next:||From: Florian Pflug||Date: 2010-04-21 15:13:29|
|Subject: Re: testing HS/SR - 1 vs 2 performance|
|Previous:||From: Tom Lane||Date: 2010-04-21 14:50:24|
|Subject: Re: Thoughts on pg_hba.conf rejection |