Pavan Deolasee wrote: > On 3/27/07, Tom Lane <tgl@xxxxxxxxxxxxx> wrote: >> >> "Matthijs Melissen" <melissen@xxxxxxxxxx> writes: >> > I am executing the following queries (id has a unique key): >> > 1) begin; >> > 1) delete from forum where id = 20; >> > 1) insert into forum (id, name) values (20, 'test'); >> > 2) delete from forum where id = 20; >> > 1) commit; >> >> > The problem is that process 2 gets the message 'DELETE 0'. I would >> expect >> > him to get the message 'DELETE 1'. >> >> Why do you find that strange? Process 1 hasn't committed its insert yet. >> >> > I think what he is saying that *after* txn 1 commits, txn 2 does not see > the > record inserted by txn1. Isn't that a fair point ? I mean txn 2 can see the > DELETE operation of txn 1, but can not see the INSERT operation of the > same transaction. Not necessarily so. I'd expect only to see a successful delete in txn 2 if a record with id = 20 existed prior to the beginning of txn 1. If that wasn't the case, then there's nothing to delete in txn 2. -- Alban Hertroys alban@xxxxxxxxxxxxxxxxx magproductions b.v. T: ++31(0)534346874 F: ++31(0)534346876 M: I: www.magproductions.nl A: Postbus 416 7500 AK Enschede // Integrate Your World //