Skip site navigation (1) Skip section navigation (2)

Re: Re: [COMMITTERS] pgsql: Reduce spurious Hot Standby conflicts from never-visible records

From: Robert Haas <robertmhaas(at)gmail(dot)com>
To: Simon Riggs <simon(at)2ndquadrant(dot)com>
Cc: Heikki Linnakangas <heikki(dot)linnakangas(at)enterprisedb(dot)com>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Re: [COMMITTERS] pgsql: Reduce spurious Hot Standby conflicts from never-visible records
Date: 2011-01-05 20:06:31
Message-ID: AANLkTinf+pgZ5reD3dvq7CmNMiiq_xpb3hf=jOneORiK@mail.gmail.com (view raw or flat)
Thread:
Lists: pgsql-committerspgsql-hackers
On Wed, Jan 5, 2011 at 3:00 PM, Simon Riggs <simon(at)2ndquadrant(dot)com> wrote:
> On Mon, 2011-01-03 at 23:13 -0500, Robert Haas wrote:
>
>> > Hmmm, my earlier code took xmax only if xmax > xmin. That was wrong;
>> > what I have now is better, but your point is there may be an even better
>> > truth. I'll think on that a little more.
>
> I remember that I thought some more on this and decided that I couldn't
> see a problem. I also see I didn't update the list to say that.
>
>> I guess the problem case here is something like:
>>
>> 1. T1 begins.  T1 writes a tuple A (so it gets an XID).
>> 2. T2 begins.  T2 writes a tuple B (so it gets a later XID).
>> 3. T1 takes a new snapshot that can see B and deletes B.
>> 4. T2 commits.
>> 5. T1 commits.
>
> How is step (3) possible before step (4)?

At read committed isolation level, which is the default, we take a new
snapshot after every command.

> There are later errors in your example also.

Well, point them out and let's discuss.

-- 
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company

In response to

Responses

pgsql-hackers by date

Next:From: Jeff DavisDate: 2011-01-05 20:07:32
Subject: Re: WIP: Range Types
Previous:From: Simon RiggsDate: 2011-01-05 20:00:45
Subject: Re: Re: [COMMITTERS] pgsql: Reduce spurious Hot Standby conflicts from never-visible records

pgsql-committers by date

Next:From: Robert HaasDate: 2011-01-05 20:08:13
Subject: Re: Re: [COMMITTERS] pgsql: Reduce spurious Hot Standby conflicts from never-visible records
Previous:From: Simon RiggsDate: 2011-01-05 20:00:45
Subject: Re: Re: [COMMITTERS] pgsql: Reduce spurious Hot Standby conflicts from never-visible records

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group