Re: [INTERFACES] locking on database updates - Mailing list pgsql-interfaces

From Tom Lane
Subject Re: [INTERFACES] locking on database updates
Date
Msg-id 25814.944636010@sss.pgh.pa.us
Whole thread Raw
In response to Re: [INTERFACES] locking on database updates  ("Ross J. Reedstrom" <reedstrm@wallace.ece.rice.edu>)
List pgsql-interfaces
"Ross J. Reedstrom" <reedstrm@wallace.ece.rice.edu> writes:
> Tom - 
> I'm surprised: that one's been beat to death in earlier incarnations
> of this FAQ. The currval() function is part of backend state: it
> always returns the last value sent to _this connection_.

Yeah, sure, I knew that ... in one brain cell or another, but evidently
not the ones on call today ;-)

A fairly weak rejoinder: if you've got triggers or rules doing things
to your tables behind-your-back, you might still not be able to assume
that the sequence's nextval() will be called only once during any one
SQL query that you issue.  So I still say the nextval-first approach
is sounder than currval-afterwards.  But I must agree it wouldn't
become an issue unless you had some pretty convoluted database
programming going on.
        regards, tom lane


pgsql-interfaces by date:

Previous
From: Tom Lane
Date:
Subject: Re: [INTERFACES] sql question
Next
From: Peter Mount
Date:
Subject: RE: [INTERFACES] Transaction support in 6.5.3/JDBC