Problem JDBC, AutoCommit ON and SELECT FOR UPDATE

From: Philippe EMERIAUD <p(dot)emeriaud(at)ordirope(dot)fr>
To: pgsql-general(at)postgresql(dot)org
Subject: Problem JDBC, AutoCommit ON and SELECT FOR UPDATE
Date: 2015-03-06 16:27:49
Message-ID: OF493CD29D.2988C2D6-ONC1257E00.005A174C-C1257E00.005A7021@ordirope.fr
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general pgsql-jdbc

Hi all,
We have an application based on DB2 database, We are testing this same
application on PostgreSQL database. By default we are in autocommit on
mode.
On DB2 (and Oracle), the query SELECT FOR UPDATE locks the row until the
resultset is closed. On PostgreSQL database (all versions) this same query
never locks (because we are in autocommit on mode). But this is a bad
implementation of JDBC specification : "If a connection is in auto-commit
mode, then all its SQL statements will be executed and committed as
individual transactions.[...] The commit occurs when the statement
completes or the next execute occurs, whichever comes first. In the case
of statements returning a ResultSet object, the statement completes when
the last row of the ResultSet object has been retrieved or the ResultSet
object has been closed."
Is it possible to lock row in autocommit on mode on PostgreSQL database ?

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Adrian Klaver 2015-03-06 17:41:54 Re: Problem JDBC, AutoCommit ON and SELECT FOR UPDATE
Previous Message Oleg Bartunov 2015-03-06 16:06:26 Re: Find similar records (compare tsvectors)

Browse pgsql-jdbc by date

  From Date Subject
Next Message Adrian Klaver 2015-03-06 17:41:54 Re: Problem JDBC, AutoCommit ON and SELECT FOR UPDATE
Previous Message Dave Cramer 2015-03-02 11:30:22 Re: Naming difference between download page and Maven central