On Wed, 2002-09-11 at 15:41, Terry Yapt wrote:
> If I understand you and
>
> USER1 starts this pl/pgsql body function
> BEGIN
> SELECT count(*) AS c1 FROM debits;
> ........
> ........ -- Here USER2 INSERTS a new row in debits table. --
> ........
> SELECT count(*) AS c2 FROM debits
> IF c1 = c2 THEN
> RETURN true
> ELSE
> RETURN false
> END IF;
> END;
>
> This functions returns TRUE ? It is right ?
If USER2's transaction has been committed, if the isolation level is
'read committed' the function will return false but if the isolation
level is 'serializable' it will return true.
If USER2's transaction is uncommitted, the function will return true
whatever the isolation level.
--
Oliver Elphick Oliver.Elphick@lfix.co.uk
Isle of Wight, UK
http://www.lfix.co.uk/oliver
GPG: 1024D/3E1D0C1C: CA12 09E0 E8D5 8870 5839 932A 614D 4C34 3E1D 0C1C
========================================
"I am crucified with Christ; nevertheless I live; yet
not I, but Christ liveth in me; and the life which I
now live in the flesh I live by the faith of the Son
of God, who loved me, and gave himself for me."
Galatians 2:20