Re: [JDBC] java is locked when select for update

From: Csaba Nagy <nagy(at)ecircle-ag(dot)com>
To: Mican Bican <mican58(at)gmail(dot)com>
Cc: Postgres general mailing list <pgsql-general(at)postgresql(dot)org>
Subject: Re: [JDBC] java is locked when select for update
Date: 2005-03-09 16:44:32
Message-ID: 1110386672.2838.65.camel@coppola.muc.ecircle.de
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general pgsql-jdbc

Please post to the list too when replying...

On Wed, 2005-03-09 at 17:29, Mican Bican wrote:
> Thank you for your answer. The reason of so long transactions is that
> I first Insert a row than get the last ID (primary key) and select it
> for update from the database and wait for user to commit it..
> I need the key becouse I will insert rows with references to this new
> row (like adresses to user etc.) ..so the user cann add some adresses
> to a user and when he press ok I commit the statement...
>
I can't see why you couldn't insert the user in a first transaction and
the addresses in further transactions... if the user gets deleted in the
meantime by somebody else, then inserting the address will fail and you
will tell the user about the error. And if you don't want other people
to see the new user before it is committed with all it's addresses, then
collect first the user data + all the address data, and then open a
transaction and insert the user and the addresses when the user presses
OK. The point is that there should not be any GUI activity between the
start and end of a transaction.
If you really need a lock (I doubt it) between updates, implement it
using some application logic, don't use the DB row locking for long
living locks. I think there is some locking helper in the contrib
modules of postgres, or if not, read up on resource locking on google.

Cheers,
Csaba.

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Thomas F.O'Connell 2005-03-09 16:59:59 Re: partitionning
Previous Message Scott Marlowe 2005-03-09 16:42:53 Re: partitionning

Browse pgsql-jdbc by date

  From Date Subject
Next Message Guillaume Cottenceau 2005-03-09 17:04:38 Re: FW: PreparedStatement#setString on non-string parameters
Previous Message Dave Cramer 2005-03-09 16:28:45 Re: java is locked when select for update