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

Upgrading driver from 7.4 to 8.1

From: "Markus Wollny" <Markus(dot)Wollny(at)computec(dot)de>
To: <pgsql-jdbc(at)postgresql(dot)org>
Subject: Upgrading driver from 7.4 to 8.1
Date: 2006-05-24 15:47:37
Message-ID: 28011CD60FB1724DBA4442E38277F62601533017@hermes.computec.de (view raw or flat)
Thread:
Lists: pgsql-jdbc
Hello!

Due to the recent security bugfix for PostgreSQL 8.1, I wanted to
upgrade my drivers according to the recommendations here
http://www.postgresql.org/docs/techdocs.49

Now we're currently using pg74.216.jdbc3.jar, even though we've long ago
upgraded our databases to version 8.1 (running 8.1.4 from today on). Our
applications are using ColdFusion MX 6.1 and the datasources are
configured using the official PostgreSQL JDBC driver. I just tried to
replace the old 7.4 driver with the latest 8.1 version
postgresql-8.1-407.jdbc3.jar. The datasource verifies okay, so the
connection actually works. 

Some queries fail, however, as in this example:

select GROUP_ID, GROUP_NAME, [...] from MY_RESULT where RULE_READ <=
(param 1)

I suspect that this happens everytime we try to send out-of-line
parameters using ColdFusions cfqueryparam syntax in conjunction with
Query-of-Queries (i.e. executing a query on a resultset of a previous
query) like this:

<cfquery name="thisQuery" dbtype="QUERY">
select          GROUP_ID,
                        GROUP_NAME,
                        [...]
from            MY_RESULT
where           RULE_READ <= <cfqueryparam cfsqltype="cf_sql_integer"
value="#thisValue#">
</cfquery>

As far as I know, ColdFusions cfqueryparam not only deals with the
binding of parameters and checking the validity of the values, it also
uses SQLPrepare/SQLExecute for execution.

When I switch back to the 7.4 driver version, everything is fine again.
Now I don't really understand what's going on, as ColdFusion doesn't
really give me so much as an error _message_, just that an error has
ocurred in this query, even with debugging turned on. Now I do get a
java.sql.SQLException with a wonderfully useless stack trace, too (see
below), but as I am not an Adobe developer I cannot really make much of
this information. So I wonder if you'd have some suggestion as to the
differences between the two driver versions that could possibly lead to
symptoms such as this?

Here's the (probably useless) stacktrace (abbreviated), the
init.inc-script contains the aforementioned query:

java.sql.SQLException
	at coldfusion.sql.JdbcImpl.getConnection(JdbcImpl.java:73)
	at coldfusion.sql.JdbcImpl.getConnection(JdbcImpl.java:56)
	at coldfusion.sql.SqlImpl.execute(SqlImpl.java:214)
	at coldfusion.tagext.sql.QueryTag.doEndTag(QueryTag.java:447)
	at
cfinit2einc50524585.runPage(/somepath/to/my/scripts/directory/init.inc:4
4)
	[...] 

If there's no other way, I'll have to stay with the 7.4 version. Will
the client-side fixes for the 8.1.4 release be backported to the
7.4-line of the JDBC driver?

Kind regards

   Markus

Responses

pgsql-jdbc by date

Next:From: Kris JurkaDate: 2006-05-24 17:05:23
Subject: Re: csv problem
Previous:From: Haris PecoDate: 2006-05-24 13:12:04
Subject: csv problem

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