I'm using pgsql 6.4.2 on Solaris via the JDBC driver. I have some queries
running simultaneously in separate threads, and this occasionally generates
a WaitOnLock error:

ERROR:  WaitOnLock: error on wakeup - Aborting this transaction

The first thread begins a transaction, does a bunch of inserts, then
commits the transaction and notifies the second thread of the inserted
data. The second thread does a bunch of selects on the data that were just
inserted. There is some overlap in the data: some of the data that the
second thread selects might be being worked on by the first thread in a
seubsequent transaction, which is how I expect this lock clash is being
caused.

What I'd like to know is how to go about debugging or working around this.
Is there some way to get the backend to report more information (such as
tables and rows) about the lock problem? What about increasing the timeout?

-- Ari Halberstadt mailto:[EMAIL PROTECTED] <http://www.magiccookie.com/>
PGP public key available at <http://www.magiccookie.com/pgpkey.txt>


Reply via email to