Re: type cache info fix - Mailing list pgsql-jdbc

From Valentine Gogichashvili
Subject Re: type cache info fix
Date
Msg-id CAP93muXTS4UMZv0w_cp6Se0ATqQwMp_waTcCPE7LBa9QC2rfWw@mail.gmail.com
Whole thread Raw
In response to type cache info fix  (Gary Baker <gary.baker@gmail.com>)
Responses Re: type cache info fix  (Dave Cramer <pg@fastcrypt.com>)
List pgsql-jdbc
Hello Gary, 

the problem with this change is that it is not backwards compatible. Though the question is, why somebody would like to keep a not deterministic behavior of the current code.

And if you are fixing this, probably it would make sense to fix getSQLType() as well.

Also it can fill your server logs with errors, if the type does not exist, regtype cast will throw an ERROR

I have prepared a little bit different change: https://github.com/pgjdbc/pgjdbc/pull/52
  
Cheers,

-- Valentine


ვალენტინ გოგიჩაშვილი
Valentine Gogichashvili


On Fri, Mar 29, 2013 at 6:08 PM, Gary Baker <gary.baker@gmail.com> wrote:
I found that type cache info wasn't honoring search path.  (I had a
UDT type that shared a name with a table).

This fixed it.


diff --git a/org/postgresql/jdbc2/TypeInfoCache.java
b/org/postgresql/jdbc2/TypeInfoCache.java
index 2e79758..2d26fd0 100644
--- a/org/postgresql/jdbc2/TypeInfoCache.java
+++ b/org/postgresql/jdbc2/TypeInfoCache.java
@@ -234,7 +234,7 @@ public class TypeInfoCache implements TypeInfo {
         if (_getOidStatement == null) {
             String sql;
             if (_conn.haveMinimumServerVersion("7.3")) {
-                sql = "SELECT oid FROM pg_catalog.pg_type WHERE typname = ?";
+                sql = "SELECT ?::regtype::oid";
             } else {
                 sql = "SELECT oid FROM pg_type WHERE typname = ?";
             }


--
Sent via pgsql-jdbc mailing list (pgsql-jdbc@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-jdbc

pgsql-jdbc by date:

Previous
From: John R Pierce
Date:
Subject: Re: Improvements for statement cancellation
Next
From: Kevin Grittner
Date:
Subject: Re: Improvements for statement cancellation