From: | Sailesh Krishnamurthy <sailesh(at)cs(dot)berkeley(dot)edu> |
---|---|
To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Cc: | Florian Weimer <fw(at)deneb(dot)enyo(dot)de>, "scott(dot)marlowe" <scott(dot)marlowe(at)ihs(dot)com>, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: PostgreSQL not ACID compliant? |
Date: | 2003-09-26 10:09:39 |
Message-ID: | bxywubvx3mk.fsf@datafix.cs.berkeley.edu |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
>>>>> "Tom" == Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> writes:
Tom> AFAIK, no commercial database does predicate locking either,
True ..
Tom> so we all fall short of true serializability. The usual
Tom> solution if you need the sort of behavior you're talking
Tom> about is to take a non-sharable write lock on the table you
Tom> want to modify, so that only one transaction can do the
Not really. If you have B+-tree indexes on the table you can get by
with key-value locking (as in ARIES/KVL) and achieve some of the
effects of predicate locking to get true serializability without
losing too much concurrency. While this falls short in the general
case, it turns out to be pretty acceptable normally (when indexes are
present).
--
Pip-pip
Sailesh
http://www.cs.berkeley.edu/~sailesh
From | Date | Subject | |
---|---|---|---|
Next Message | Merlin Moncure | 2003-09-26 12:11:44 | Re: [HACKERS] Threads vs Processes |
Previous Message | Andreas Pflug | 2003-09-26 09:35:08 | Re: pg_get_triggerdef pretty printing |