Re: Picking up strange queries for "pg_catalog" - Mailing list pgsql-jdbc

From Graham Leggett
Subject Re: Picking up strange queries for "pg_catalog"
Date
Msg-id D394E16B-80F1-4E2E-A2F6-FFD913EBAED2@sharp.fm
Whole thread Raw
In response to Re: Picking up strange queries for "pg_catalog"  (Thomas Kellerer <spam_eater@gmx.net>)
List pgsql-jdbc
On 04 Jul 2010, at 1:25 PM, Thomas Kellerer wrote:

> I don't think it's the driver "making" these calls. Some of them
> look like they are a result of calling severl JDBC metadata API
> functions (e.g DatabaseMetaData.getColumns() or something similar)
> which in turn are not initiated by the driver, but by the client
> software. So I would suspect the transaction manager or your ORM
> library to make those calls (and thus generating the queries)

I have managed to isolate at least one of the strange queries to a
call to the "getColumnTypeName()" method on the following object:

org.postgresql.jdbc3.Jdbc3ResultSetMetaData

The debugger catches what I think are internal fields inside the above
object called "schemaNameCache" and "tableNameCache", both of which
are null.

In theory it looks like the Jdbc3ResultSetMetaData object is firing
off database queries on calls to metadata methods over and over again.

Am I on the right track, and if so, is there a way to get the JDBC
driver's org.postgresql.jdbc3.Jdbc3ResultSetMetaData object to cache
these calls so that they aren't as expensive?

Regards,
Graham
--


pgsql-jdbc by date:

Previous
From: Lew
Date:
Subject: Re: Interpretability with xDBC specification
Next
From: Bryan Montgomery
Date:
Subject: Trying to accomplish SSO from Windows