Re: getTypeMap() returns null - bug? - Mailing list pgsql-jdbc

From Dave Cramer
Subject Re: getTypeMap() returns null - bug?
Date
Msg-id CADK3HHJWWs9qSLZaVR9mi=AMVC8vPNeOF2s1ATNftNMtqVWJFw@mail.gmail.com
Whole thread Raw
In response to Re: getTypeMap() returns null - bug?  (rob stone <floriparob@gmail.com>)
Responses Re: getTypeMap() returns null - bug?
List pgsql-jdbc


On Mon, 11 May 2020 at 02:21, rob stone <floriparob@gmail.com> wrote:
Hi,

On Mon, 2020-05-11 at 01:03 -0400, javadesigner wrote:
> Hi all:
>
> I'm playing around with customized Type Mappings and have the
> following
> snipped of code:
>
> ====
> Connection con = getConnection();  /*get connection from driver -
> util
> method*/
> System.out.println("GOT CONNECTION:" + con);
> java.util.Map map = con.getTypeMap();
> System.out.println("map:"+map);
> ====
>
> When I run this I get:
>
> GOT CONNECTION:org.postgresql.jdbc.PgConnection@3f8f9dd6
> map:null
>
> getTypeMap should return a map but it returns null !
>
> I don't see any pending issues/bug on the mailing list archives.
>
> I'm using the following (up-to-date) setup:
>
> postgres 11.7
> driver: postgresql-42.2.12.jar
> java: 1.8.x
>
> Best,
> -J
>
>

From the doco:-

Map<String,Class<?>> getTypeMap() throws SQLException

Retrieves the Map object associated with this Connection object. Unless
the application has added an entry, the type map returned will be
empty.

You must invoke setTypeMap after making changes to the Map object
returned from getTypeMap as a JDBC driver may create an internal copy
of the Map object passed to setTypeMap:

      Map<String,Class<?>> myMap = con.getTypeMap();
      myMap.put("mySchemaName.ATHLETES", Athletes.class);
      con.setTypeMap(myMap);


Returns:
    the java.util.Map object associated with this Connection object
Throws:
    SQLException - if a database access error occurs or this method is
called on a closed connection
    SQLFeatureNotSupportedException - if the JDBC driver does not
support this method
Since:
    1.2



Note this paragraph:- "Retrieves the Map object associated with this
Connection object. Unless the application has added an entry, the type
map returned will be empty." I.e., null.

Yes, it is a bug. It should return an empty typemap


Dave Cramer
www.postgres.rocks 

pgsql-jdbc by date:

Previous
From: Mark Rotteveel
Date:
Subject: Re: getTypeMap() returns null - bug?
Next
From: Dave Cramer
Date:
Subject: [pgjdbc/pgjdbc] f3abb4: fix: getTypeMap() returning null (#1781)