From: | Oliver Jowett <oliver(at)opencloud(dot)com> |
---|---|
To: | Gaetano Mendola <mendola(at)bigfoot(dot)com> |
Cc: | John R Pierce <pierce(at)hogranch(dot)com>, pgsql-jdbc(at)postgresql(dot)org |
Subject: | Re: "Idle in Transaction" revisited. |
Date: | 2004-09-18 10:53:26 |
Message-ID: | 414C13A6.8080407@opencloud.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-jdbc |
Gaetano Mendola wrote:
> John R Pierce wrote:
>
>> I'm curious what common practice is for threads that do nothing but
>> SELECTS... do folks just enable auto_commit, thereby preventing pgJDBC
>> from doing BEGIN; ? Do they lace their code with COMMIT() calls?
>
>
> We were bitten by this problem too, and my solution was to suggest our
> developer to do and explicit: "ABORT" after the connection, and do
> explicit "BEGIN" "END" instead of rely on the jdbc interface.
This is a pretty bad idea as it can confuse the driver's idea of the
current transaction state. For example, cursor-based resultsets won't
ever be used if you do your own transaction demarcation in this way.
Better to use the standard JDBC autocommit API and a driver that has the
premature-BEGIN problem fixed.
-O
From | Date | Subject | |
---|---|---|---|
Next Message | Gaetano Mendola | 2004-09-18 13:50:34 | Re: "Idle in Transaction" revisited. |
Previous Message | Gaetano Mendola | 2004-09-18 10:35:18 | Re: "Idle in Transaction" revisited. |