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

Re: BUG #1155: AbstractJdbc2ResultSet:parseQuery ; in tablename

From: Kris Jurka <books(at)ejurka(dot)com>
To: David Brownlee <abs(at)mono(dot)org>
Cc: pgsql-bugs(at)postgresql(dot)org
Subject: Re: BUG #1155: AbstractJdbc2ResultSet:parseQuery ; in tablename
Date: 2004-05-24 19:05:02
Message-ID: Pine.BSO.4.56.0405241359430.1159@leary.csoft.net (view raw or flat)
Thread:
Lists: pgsql-bugs

On Sat, 22 May 2004, PostgreSQL Bugs List wrote:

> 
> The following bug has been logged online:
> 
> Logged by:          David Brownlee
> Email address:      abs(at)mono(dot)org
> PostgreSQL version: 7.4
> Description:        AbstractJdbc2ResultSet:parseQuery ; in tablename
> Details: 
> 
> 
> In AbstractJdbc2ResultSet:parseQuery can end up leaving a ; on the end of a 
> tablename, which when later used in isUpdateable() will choke. 
> The following 'fixes' it:
> 
> --- org/postgresql/jdbc2/AbstractJdbc2ResultSet.java.orig       2004-05-21 
> 12:54 
> :29.000000000 +0100
> +++ org/postgresql/jdbc2/AbstractJdbc2ResultSet.java
> @@ -1448,7 +1450,7 @@ public abstract class AbstractJdbc2Resul
>                         {
>                                 if (name.toLowerCase().equals("from"))
>                                 {
> -                                       tableName = st.nextToken();
> +                                       tableName = 
> st.nextToken().replaceAll("; 
> ", "");
>                                         tableFound = true;
>                                 }
> 
> This was found while writing a small java tool to copy the contents of one 
> database to another, which can be provided to demonstrate the problem on 
> request. Would have attached it here if there had been an option :) 
> 

This isn't a valid solution as replaceAll is a 1.4 jdk feature while this
code is in the jdbc2 package which means it must be compilable with the
1.2 jdk.  Additionally it's possible for a tablename to contain a
semi-colon.  I've been discussing the failings of parseQuery with another
user here:

http://gborg.postgresql.org/project/pgjdbc/bugs/bugupdate.php?793

Kris Jurka

In response to

pgsql-bugs by date

Next:From: Martin PittDate: 2004-05-25 08:04:23
Subject: Fwd: Bug#249083: postgresql: Postgres SIGSEGV if wins in nsswitch.conf
Previous:From: PostgreSQL Bugs ListDate: 2004-05-22 16:58:16
Subject: BUG #1155: AbstractJdbc2ResultSet:parseQuery ; in tablename

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