Re: Waiting on a transaction - Mailing list pgsql-general

From Matt Miller
Subject Re: Waiting on a transaction
Date
Msg-id 1124219944.3714.39.camel@dbamm01-linux
Whole thread Raw
In response to Re: Waiting on a transaction  (Bill Moseley <moseley@hank.org>)
Responses Re: Waiting on a transaction  (Doug Bloebaum <blabes@gmail.com>)
List pgsql-general
On Tue, 2005-08-16 at 12:01 -0700, Bill Moseley wrote:
> I wondered if my application should set an alarm and timeout
> with an error if, by odd chance, an update hangs.

Here's a way to handle this under the upcoming 8.1 release:

Before you execute the update you can execute SELECT ... FOR UPDATE
NOWAIT to select anything (e.g. dummy constant) from the row that you
want to update.  If no error is thrown then you have a lock on your row
and you can confidently proceed with your update.  Otherwise someone has
that row locked.  At that point you can loop and retry if you want.

pgsql-general by date:

Previous
From: Rogério A Bassete
Date:
Subject: Error: Unable to look up type id 0
Next
From: Richard Huxton
Date:
Subject: Re: lock problem