From: | Adriaan Joubert <a(dot)joubert(at)albourne(dot)com> |
---|---|
To: | pgsql-jdbc(at)postgresql(dot)org |
Subject: | currval() race condition on server? |
Date: | 2006-10-23 13:49:13 |
Message-ID: | 453CC859.8070306@albourne.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-admin pgsql-jdbc |
Hi,
I've run into an intermittent problem with our code recently. We have
the following set-up:
table A : some data table
table B : a history table for table A
A trigger copies the old version of a row into table B whenever an
update is done on table A. Both A and B contain an audit number, and the
trigger obtains an audit number from a sequence and inserts it into the
row inserted into table A.
For some bookkeeping purposes I need the new audit number back from the
update, so I submit a prepared statement through jdbc of the form
UPDATE A SET ....; SELECT currval('ip_audit_seq');
On the first call I get
ERROR: currval of sequence "ip_audit_seq" is not yet defined in this
session
Note that this works without any trouble if I issue the commands in a
transaction through psql, and this used to work in earlier versions of
postgres.
We have a lot of users on very high latency links, so it is important
for the responsiveness of the application to try to do the update and
select in a single database trip.
So I'm wondering whether there is some type of race condition, where the
selection of the new value from ip_audit_seq is not available to the
currval function straight away? Anybody got any ideas on this?
Cheers,
Adriaan
From | Date | Subject | |
---|---|---|---|
Next Message | Achilleas Mantzios | 2006-10-23 14:04:04 | Re: currval() race condition on server? |
Previous Message | Matthias.Pitzl | 2006-10-23 09:00:33 | Re: FastCgi / PostgreSQL: FATAL: Ident authentication fai |
From | Date | Subject | |
---|---|---|---|
Next Message | Achilleas Mantzios | 2006-10-23 14:04:04 | Re: currval() race condition on server? |
Previous Message | Bill Boggins | 2006-10-20 08:21:17 | Connecting to SSL PostgreSQL with WebStart Application |