Skip site navigation (1) Skip section navigation (2)

Re: [JDBC] Strange server error with current 8.0beta driver

From: "Barry Lind" <blind(at)xythos(dot)com>
To: "Tom Lane" <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: <pgsql-jdbc(at)postgresql(dot)org>, <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: [JDBC] Strange server error with current 8.0beta driver
Date: 2004-11-24 05:15:32
Message-ID: 03E7D3E231BB7B4A915A6581D4296CC6CC9794@NSNOVPS00411.nacio.xythos.com (view raw or flat)
Thread:
Lists: pgsql-hackerspgsql-jdbc
Tom,

Here is what you requested.  (Thanks to Oliver for the good logging in
the jdbc driver).

I also have the test case (in java) down to the bare minimum that
generated the following output (that test case is attached).  (Note that
if the FETCH in the test case is not executed then the backend crashes;
with the FETCH you get an error: "ERROR: unrecognized node type: 0")

Thanks,
--Barry


PostgreSQL 8.0devel JDBC3 with SSL (build 308)
Trying to establish a protocol version 3 connection to localhost:5432
 FE=> StartupPacket(user=blind, database=fileswfs43,
client_encoding=UNICODE, DateStyle=ISO)
 <=BE AuthenticationOk
 <=BE ParameterStatus(client_encoding = UNICODE)
 <=BE ParameterStatus(DateStyle = ISO, MDY)
 <=BE ParameterStatus(integer_datetimes = off)
 <=BE ParameterStatus(is_superuser = on)
 <=BE ParameterStatus(server_encoding = UNICODE)
 <=BE ParameterStatus(server_version = 8.0.0beta4)
 <=BE ParameterStatus(session_authorization = blind)
 <=BE BackendKeyData(pid=3348,ckey=914259969)
 <=BE ReadyForQuery(I)
    compatible = 8.0
    loglevel = 2
    prepare threshold = 1
getConnection returning
driver[className=org.postgresql.Driver,org(dot)postgresql(dot)Driver(at)a9ae05]
simple execute,
handler=org.postgresql.jdbc2.AbstractJdbc2Statement$StatementResultHandl
er(at)1df5a8f, maxRows=0, fetchSize=0, flags=0
 FE=> Parse(stmt=S_1,query="BEGIN",oids={})
 FE=> Bind(stmt=S_1,portal=null)
 FE=> Execute(portal=null,limit=0)
 FE=> Parse(stmt=S_2,query="DECLARE CUR CURSOR FOR SELECT 1",oids={})
 FE=> Bind(stmt=S_2,portal=null)
 FE=> Describe(portal=null)
 FE=> Execute(portal=null,limit=0)
 FE=> Sync
 <=BE ParseComplete [S_1]
 <=BE BindComplete [null]
 <=BE CommandStatus(BEGIN)
 <=BE ParseComplete [S_2]
 <=BE BindComplete [null]
 <=BE NoData
 <=BE CommandStatus(DECLARE CURSOR)
 <=BE ReadyForQuery(T)
simple execute,
handler=org.postgresql.jdbc2.AbstractJdbc2Statement$StatementResultHandl
er(at)1db699b, maxRows=0, fetchSize=0, flags=0
 FE=> Parse(stmt=S_3,query="FETCH FORWARD 10 FROM CUR",oids={})
 FE=> Bind(stmt=S_3,portal=null)
 FE=> Describe(portal=null)
 FE=> Execute(portal=null,limit=0)
 FE=> Sync
 <=BE ParseComplete [S_3]
 <=BE BindComplete [null]
 <=BE RowDescription(1)
 <=BE DataRow
 <=BE CommandStatus(FETCH)
 <=BE ReadyForQuery(T)
simple execute,
handler=org.postgresql.jdbc2.AbstractJdbc2Statement$StatementResultHandl
er(at)12a0f6c, maxRows=0, fetchSize=0, flags=0
 FE=> Parse(stmt=S_4,query="CLOSE CUR",oids={})
 FE=> Bind(stmt=S_4,portal=null)
 FE=> Describe(portal=null)
 FE=> Execute(portal=null,limit=0)
 FE=> Sync
 <=BE ParseComplete [S_4]
 <=BE BindComplete [null]
 <=BE NoData
 <=BE CommandStatus(CLOSE CURSOR)
 <=BE ReadyForQuery(T)
simple execute,
handler=org.postgresql.jdbc2.AbstractJdbc2Statement$StatementResultHandl
er(at)134a7d8, maxRows=0, fetchSize=0, flags=0
 FE=> Bind(stmt=S_2,portal=null)
 FE=> Describe(portal=null)
 FE=> Execute(portal=null,limit=0)
 FE=> Sync
 <=BE BindComplete [null]
 <=BE NoData
 <=BE ErrorMessage(ERROR: unrecognized node type: 0
  Location: File: clauses.c, Routine: expression_tree_mutator, Line:
3220
  Server SQLState: XX000)
java.sql.SQLException: ERROR: unrecognized node type: 0
  Location: File: clauses.c, Routine: expression_tree_mutator, Line:
3220
  Server SQLState: XX000
	at
org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecu
torImpl.java:1356)
	at
org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImp
l.java:1151)
	at
org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:
166)
	at
org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Stateme
nt.java:363)
	at
org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdb
c2Statement.java:308)
	at
org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Stateme
nt.java:299)
	at test80.main(test80.java:31)
SQLException: SQLState(XX000)
 <=BE ReadyForQuery(E)
java.sql.SQLException: ERROR: unrecognized node type: 0
  Location: File: clauses.c, Routine: expression_tree_mutator, Line:
3220
  Server SQLState: XX000 



-----Original Message-----
From: Tom Lane [mailto:tgl(at)sss(dot)pgh(dot)pa(dot)us] 
Sent: Tuesday, November 23, 2004 7:10 AM
To: Barry Lind
Cc: pgsql-jdbc(at)postgresql(dot)org; pgsql-hackers(at)postgresql(dot)org
Subject: Re: [HACKERS] [JDBC] Strange server error with current 8.0beta
driver 

"Barry Lind" <blind(at)xythos(dot)com> writes:
> OK, getting closer.  The error happens if in jdbc I reuse 
> PreparedStatement objects to reexecute the same set of queries 
> multiple times.

The TRAP you showed looked like it might have something to do with
trying to execute code outside any transaction.  But I dunno how it got
there.

> If you still need a test case, let me know, and I will continue to 
> package up what I have been working on.

What I'd actually rather have is a list of the exact sequence of
messages sent to the server.

			regards, tom lane


Attachment: test80.java
Description: application/octet-stream (1.4 KB)

Responses

pgsql-hackers by date

Next:From: Tom LaneDate: 2004-11-24 05:32:42
Subject: Re: Big number of schemas (3500) into a single database
Previous:From: Tom LaneDate: 2004-11-24 04:56:26
Subject: Re: Plperl Safe version check fails for Safe 2.09

pgsql-jdbc by date

Next:From: Oliver JowettDate: 2004-11-24 09:21:44
Subject: Re: [JDBC] Strange server error with current 8.0beta driver
Previous:From: Hunter HillegasDate: 2004-11-23 23:56:59
Subject: Copying into Unicode - Correcting Errors

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group