On Thu, 5 Jun 2003, Rasmus Resen Amossen wrote:
> Does Postgres garantee repeatable-read (RR) during transactions? And does it
> implement ARIES/KVL?
>
> If so, why is the following possible?
>
> T1: begin;
> T1: select * from table;
> (notice the row with id = X)
> T2: begin;
> T2: delete from table where id = X;
> T1: select * from table;
> (notice the row with id = X suddenly is gone)
I can't reproduce the above. Are you sure T2 isn't committing? If it
were, since the default isolation level is read committed, T1 would be
allowed to see the state after T2 has committed. It isn't allowed to in
serializable isolation (or in repeatable read, but afaik we only support
read committed and serializable currently).