Re: SET TRANSACTION ISOLATION LEVEL

From: Barry Lind <blind(at)xythos(dot)com>
To: Philip Crotwell <crotwell(at)seis(dot)sc(dot)edu>
Cc: pgsql-jdbc(at)postgresql(dot)org
Subject: Re: SET TRANSACTION ISOLATION LEVEL
Date: 2002-02-25 17:51:19
Message-ID: 3C7A7997.9000603@xythos.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-jdbc

Philip,

From the log file you have provided, the problem is that you are
continuing to use a connection after an error has been reported. After
any error in postgresql you need to rollback and start a new
transaction. You cannot catch an error and continue processing. The
error you are seeing is as a result of trying to continue processing
after the error without having done a rollback.

thanks,
--Barry

Philip Crotwell wrote:

>Hi
>
>I got this error, it isn't the first transaction since the server was
>started, so I don't understant what it means. The docs seem to suggest
>that the READ COMMITTED level is default. If there is a default, why do I
>need to set it?
>
>I am AFAIK running single threaded in my java code, so I don't think I
>would be dong two separate transactions in the same connection.
>
>postgres 7.1. and this code involved is to get large objects, so it is
>non-auto-commiting.
>
>thanks,
>PHilip
>
>
> java.sql.SQLException: ERROR: SET TRANSACTION ISOLATION LEVEL must be
>called be fore any query
>
> at org.postgresql.Connection.ExecSQL(Connection.java:533)
> at org.postgresql.Connection.ExecSQL(Connection.java:400)
> at
>org.postgresql.jdbc2.Connection.doIsolationLevel(Connection.java:412)
> at org.postgresql.jdbc2.Connection.commit(Connection.java:226)
> ...
>
>And from the server log:
>
>NOTICE: CREATE TABLE/PRIMARY KEY will create implicit index 'quit_pkey'
>for tab
>le 'quit'
>ERROR: Relation 'quit' already exists
>ERROR: Relation 'plottable_cache_seq' already exists
>NOTICE: CREATE TABLE/PRIMARY KEY will create implicit index 'quit_pkey'
>for tab
>le 'quit'
>ERROR: Relation 'quit' already exists
>DEBUG: MoveOfflineLogs: remove 0000000C000000E4
>pq_flush: send() failed: Broken pipe
>pq_recvbuf: unexpected EOF on client connection
>DEBUG: MoveOfflineLogs: remove 0000000C000000E5
>ERROR: Relation 'event' does not exist
>DEBUG: MoveOfflineLogs: remove 0000000C000000E6
>NOTICE: BEGIN: already a transaction in progress
>ERROR: SET TRANSACTION ISOLATION LEVEL must be called before any query
>NOTICE: current transaction is aborted, queries ignored until end of
>transactio
>n block
>NOTICE: current transaction is aborted, queries ignored until end of
>transactio
>n block
>NOTICE: current transaction is aborted, queries ignored until end of
>transactio
>n block
>NOTICE: current transaction is aborted, queries ignored until end of
>transactio
>n block
>NOTICE: current transaction is aborted, queries ignored until end of
>transactio
>n block
>NOTICE: current transaction is aborted, queries ignored until end of
>transactio
>n block
>
>
>
>
>---------------------------(end of broadcast)---------------------------
>TIP 6: Have you searched our list archives?
>
>http://archives.postgresql.org
>

In response to

Responses

Browse pgsql-jdbc by date

  From Date Subject
Next Message Anthony Kwok 2002-02-26 04:37:12 Last 7.2 JDBC driver
Previous Message Nick Fankhauser 2002-02-25 17:11:28 Re: jdbc -Connection fail in suddnly