| 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: | Whole Thread | Raw Message | 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. |