Oh dear... How obvious ...what a goose I am Chalk up another pebkac problem for me... (pebkac =3D "problem exists between keyboard and chair") Cheers Connor On 6/9/05, Khemmanivanh, Somckit <somckit.khemmanivanh@xxxxxxxxxxxxxxxx> wr= ote: >=20 > Hey, >=20 > I'm no trigger expert and may be way off, but... >=20 > Just trying to work out the event flow here... >=20 > Session 1 deletes where x =3D 1 (this sets the lock on this row), then th= e > trigger fires and locks the remaining rows >=20 > Session 2 tries to delete where x =3D 2, but Sess 1's trigger would have > acquired a lock on this row, thus session 2 waits. >=20 > To me the trigger for session 2 would not have fired yet since it's > being blocked on the delete process. The trigger is an AFTER delete > trigger but the delete never gets a chance to complete due to the lock > acquired by the first trigger. >=20 > Sess 2's select ... for update nowait statement never gets a chance to > execute...By the way is there a way to check if a trigger has fired? >=20 > Feel free to correct me if I'm way off. >=20 --=20 Connor McDonald =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D email: connor_mcdonald@xxxxxxxxx web: http://www.oracledba.co.uk "Semper in excremento, sole profundum qui variat" -- //www.freelists.org/webpage/oracle-l