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

From: Rene Pijlman <rpijlman(at)wanadoo(dot)nl>
To: pgsql-patches(at)postgresql(dot)org
Subject: Re: Re: [JDBC] JDBC pg_description update needed for CVS tip
Date: 2001-08-16 17:53:39
Message-ID: hu1ont8tksr6neurq1j2gc5cm600a9s0nl@4ax.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers pgsql-jdbc pgsql-patches

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

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Oleg Bartunov 2001-08-16 17:58:51 Re: Patches (current CVS) for changes if index AM tables
Previous Message Kovacs Zoltan 2001-08-16 17:47:26 PLPGSQL bug in implicit SELECT

Browse pgsql-jdbc by date

  From Date Subject
Next Message Bruce Momjian 2001-08-16 21:45:23 Re: [PATCHES] Re: JDBC pg_description update needed for CVS tip
Previous Message Dave Cramer 2001-08-16 17:48:44 RE: "No results" exception on executeQuery()

Browse pgsql-patches by date

  From Date Subject
Next Message Bruce Momjian 2001-08-16 18:08:43 Re: Re: Proposal for encrypting pg_shadow passwords
Previous Message Tom Lane 2001-08-16 17:42:52 Re: Re: Proposal for encrypting pg_shadow passwords