From: | Robert Haas <robertmhaas(at)gmail(dot)com> |
---|---|
To: | Peter Eisentraut <peter_e(at)gmx(dot)net> |
Cc: | pgsql-hackers(at)postgresql(dot)org, Heikki Linnakangas <heikki(dot)linnakangas(at)enterprisedb(dot)com>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Greg Stark <greg(dot)stark(at)enterprisedb(dot)com>, Kevin Grittner <Kevin(dot)Grittner(at)wicourts(dot)gov>, Jeff Davis <pgsql(at)j-davis(dot)com> |
Subject: | Re: User-facing aspects of serializable transactions |
Date: | 2009-05-28 15:41:53 |
Message-ID: | 603c8f070905280841t289ba506n4a6369e3407dc2b@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Thu, May 28, 2009 at 8:43 AM, Peter Eisentraut <peter_e(at)gmx(dot)net> wrote:
> On Thursday 28 May 2009 15:24:59 Heikki Linnakangas wrote:
>> I don't think you need that for predicate locking. To determine if e.g
>> an INSERT and a SELECT conflict, you need to determine if the INSERTed
>> tuple matches the predicate in the SELECT. No need to deduce anything
>> between two predicates, but between a tuple and a predicate.
>
> That might the easy part. The hard part is determining whether a SELECT and
> an UPDATE conflict.
What's hard about that? INSERTs are the hard case, because the rows
you care about don't exist yet. SELECT, UPDATE, and DELETE are easy
by comparison; you can lock the actual rows at issue. Unless I'm
confused?
...Robert
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2009-05-28 15:42:03 | Re: Compiler warning cleanup - unitilized const variables, pointer type mismatch |
Previous Message | Markus Wanner | 2009-05-28 15:40:15 | Re: PostgreSQL Developer meeting minutes up |