Re: commit after select - Mailing list pgsql-jdbc

From Oliver Jowett
Subject Re: commit after select
Date
Msg-id 4071D840.3040205@opencloud.com
Whole thread Raw
In response to commit after select  (bob1234@pi.be (Bob Bie))
List pgsql-jdbc
Bob Bie wrote:
> Hello,
>
> I'm writing a java program that uses transactions. For this reason I
> turned of the autocimmit in java (sqlConnection.setAutocommit(false);)
> This seems to work but now he also seems to lock the tables when I
> only do a select. I can solve this bij doing a commit after each
> select.

In general, SELECTs do not acquire locks. What behaviour leads to
believe they do?

Have you read the concurrency control chapter of the docs?
http://developer.postgresql.org/docs/postgres/mvcc.html

> I only want to know if it is normal that I have to do a commit after a
> select.

With autocommit off, a SELECT (or in fact *any* query) will start a new
transaction. It's your responsibility to eventually close that
transaction (via commit() or rollback()) at an apropriate point.

> I use java 1.4.2_01 and postgres 7.3. The jdbc driver I use is called
> pg73jdbc3.

This is quite an old driver; you're better off running the current 7.4
drivers (they will talk to a 7.3 database fine).

-O

pgsql-jdbc by date:

Previous
From: Oliver Jowett
Date:
Subject: slow delivery of pgsql-jdbc mail?
Next
From: Oliver Jowett
Date:
Subject: Re: patch: enforce the requirements for scrollable resultsets