>>> Tom Lane <t...@sss.pgh.pa.us> wrote: 
> Jeff Davis <pg...@j-davis.com> writes:
>> There you see a snapshot of the table that never existed. Either
the
>> snapshot was taken before the UPDATE, in which case i=3 should be
>> included, or it was taken after the UPDATE, in which case i=4 should
be
>> included. So atomicity is broken for WHERE.
> 
> This assertion is based on a misunderstanding of what FOR UPDATE in
> read-committed mode is defined to do.  It is supposed to give you
the
> latest available rows.
 
Well, technically it's violating the Isolation part of ACID, not the
Atomicity, since the UPDATE transaction will either commit or roll
back in its entirety, but another transaction can see it in an
intermediate (partially applied) state.[1]
 
I guess the issue of whether this violation of ACID properties should
be considered a bug or a feature is a separate discussion, but calling
it a feature seems like a hard sell to me.
 
-Kevin
 
[1] http://en.wikipedia.org/wiki/ACID


-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Reply via email to