Re: Re: [JDBC] JDBC pg_description update needed for CVS tip

From: Barry Lind <barry(at)xythos(dot)com>
To: Rene Pijlman <rpijlman(at)wanadoo(dot)nl>
Cc: pgsql-patches(at)postgresql(dot)org
Subject: Re: Re: [JDBC] JDBC pg_description update needed for CVS tip
Date: 2001-08-17 02:21:01
Message-ID: 3B7C7F8D.5000105@xythos.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers pgsql-jdbc pgsql-patches

If it helps I reviewed that patch and it looks fine to me.

--Barry

Rene Pijlman wrote:
> I I'm not mistaken I haven't seen the usual confirmation ("Your
> patch has been added to the PostgreSQL unapplied patches list")
> for this patch yet.
>
> Is there something wrong with the patch, or is it just waiting
> for something or someone?
>
> On Mon, 13 Aug 2001 20:01:24 +0200, I wrote:
>
>>Attached is the patch requested by Tom Lane (see below). It
>>includes two changes in the JDBC driver:
>>
>>1) When connected to a backend >= 7.2: use obj_description() and
>>col_description() instead of direct access to pg_description.
>>
>>2) In DatabaseMetaData.getTables()/getColumns()/getProcedures():
>>when there is no comment on the object, return null in the
>>REMARKS column of the ResultSet, instead of the default string
>>"no remarks".
>>
>>Change 2 first appeared as a side-effect of change 1, but it is
>>actually more compliant with the JDBC spec: "String object
>>containing an explanatory comment on the table/column/procedure,
>>which may be null". The default string "no remarks" was strictly
>>speaking incorrect, as it could not be distinguished from a real
>>user comment "no remarks". So I removed the default string
>>completely.
>>
>>Change 2 might break existing code that doesn't follow the JDBC
>>spec and isn't prepared to handle a null in the REMARKS column
>>of getTables()/getColumns()/getProcedures.
>>
>>Patch tested with jdbc2 against both a 7.1 and a CVS tip
>>backend. I did not have a jdbc1 environment to build and test
>>with, but since the touched code is identical in jdbc1 and jdbc2
>>I don't foresee any problems.
>>
>>Regards,
>>René Pijlman
>>
>>On Fri, 10 Aug 2001 16:08:50 -0400, Tom Lane wrote:
>>
>>>Would some JDBC hacker develop a patch for the following issue? The
>>>change is just barely large enough that I don't want to commit untested
>>>code for it --- but not having a Java development environment at hand,
>>>I can't test the updated code.
>>>
>>>The problem is in DatabaseMetaData.java (same code in both jdbc1 and
>>>jdbc2, looks like). It does direct access to pg_description that isn't
>>>right anymore. In getTables, instead of
>>>
>>> java.sql.ResultSet dr = connection.ExecSQL("select description from pg_description where objoid="+r.getInt(2));
>>>
>>>it should be
>>>
>>> java.sql.ResultSet dr = connection.ExecSQL("select obj_description("+r.getInt(2)+",'pg_class')");
>>>
>>>In getColumns, the change is a little more involved, because
>>>pg_attribute doesn't have an OID column anymore. The initial query
>>>can't fetch a.oid, but should fetch a.attrelid instead, and then the
>>>pg_description query should become
>>>
>>> java.sql.ResultSet dr = connection.ExecSQL("select col_description("+r.getInt(1)+","+r.getInt(5)+")");
>>>
>>>(col_description takes the table OID and the column's attnum).
>>>
>>>The reason this is more than a 3-line change is that it should be done
>>>either the old way or the new way depending on whether server version >=
>>>7.2 or not, for backwards-compatibility of the driver.
>>>
>>>It's possible there are other similar changes needed that I missed in a
>>>quick lookover.
>>>
>>>So, would some enterprising person fix the JDBC code to work with CVS
>>>tip, and submit a patch?
>>>
>>> thanks, tom lane
>>>
>>>---------------------------(end of broadcast)---------------------------
>>>TIP 3: if posting/reading through Usenet, please send an appropriate
>>>subscribe-nomail command to majordomo(at)postgresql(dot)org so that your
>>>message can get through to the mailing list cleanly
>>>
>>
>>Regards,
>>René Pijlman
>>
>
>
> Regards,
> René Pijlman
>
> ---------------------------(end of broadcast)---------------------------
> TIP 1: subscribe and unsubscribe commands go to majordomo(at)postgresql(dot)org
>
>

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2001-08-17 02:36:49 Re: Rough idea for supporting "sequencename.nextval" syntax
Previous Message Bruce Momjian 2001-08-17 02:10:40 crypt and null termination

Browse pgsql-jdbc by date

  From Date Subject
Next Message Luís Henriques 2001-08-17 10:13:12 postgresql ID
Previous Message Bruce Momjian 2001-08-16 21:45:23 Re: [PATCHES] Re: JDBC pg_description update needed for CVS tip

Browse pgsql-patches by date

  From Date Subject
Next Message Bruce Momjian 2001-08-17 02:58:36 Re: Re: Proposal for encrypting pg_shadow passwords
Previous Message Bruce Momjian 2001-08-16 21:46:55 Re: Re: Proposal for encrypting pg_shadow passwords