Re: summary of new features in JDBC 3.0 - Mailing list pgsql-jdbc

From Oliver Jowett
Subject Re: summary of new features in JDBC 3.0
Date
Msg-id 4180101C.7090500@opencloud.com
Whole thread Raw
In response to summary of new features in JDBC 3.0  (Vadim Nasardinov <vadimn@redhat.com>)
Responses Re: summary of new features in JDBC 3.0  (Vadim Nasardinov <vadimn@redhat.com>)
List pgsql-jdbc
Vadim Nasardinov wrote:
> This is probably asking too much, but I was wondering if anyone could
> assign a current perceived priority to each of the new features
> introduced in JDBC 3.0 in terms of whether and when they will be
> supported by the PostgreSQL JDBC driver.

You might want to look at the driver todo list:
http://jdbc.postgresql.org/todo.html

Also note that for much of the stuff that we do not implement, we say
that we don't implement it in our metadata responses. JDBC3 compliance
doesn't require that you support all the bells and whistles, just that
you have a minimum feature set and have accurate metadata, IIRC.

>     * Savepoint support

Implemented.

>     * Reuse of prepared statements by connection pools

Not implemented. From memory this is transparent to the JDBC user
anyway. It's on the todo list.

>     * Connection pool configuration

What does this entail? Aren't connection pools in the realm of the
appserver?

>     * Retrieval of parameter metadata

Not implemented. This can probably be supported with a V3 connection and
a statement Describe.

>     * Retrieval of auto-generated keys

Not implemented. Probably needs backend support. See the todo list.

>     * Ability to have multiple open ResultSet objects

Implemented.

>     * Passing parameters to CallableStatement objects by name

Unlikely to happen until there is backend support for passing function
parameters by name (or is this something different?)

>     * Holdable cursor support

Not implemented. See the todo list.

>     * BOOLEAN data type

Implemented. This is just an alias for BIT.

>     * Making internal updates to the data in Blob and Clob objects

I assume this is the positioned write stuff? Not implemented, but
doesn't look too hard to do. See the todo list.

>     * Retrieving and updating the object referenced by a Ref object

Not implemented. The backend does not support REF.

>     * Updating of columns containing BLOB, CLOB, ARRAY and REF types

We don't support REF, see above.

The other types are not implemented, but given that we support them in
PreparedStatement there's no real reason we can't support updates too.

>     * DATALINK/URL data type

Not implemented. The backend does not support DATALINK/URL. We could
possibly just map this to VARCHAR?

>     * Transform groups and type mapping

If this is the SQL type maps stuff, then not implemented. Kris is
working on SQLInput/SQLOutput implementations that would allow this to
be implemented. See the todo list.

>     * Relationship between the JDBC SPI (Service Provider Interface) and
>       the Connector architecture

I don't think this imposes any implementation requirements on the driver?

>     * DatabaseMetadata APIs

We implement all the methods, but I don't know how accurate the returned
values are. There are some resultset-returning methods that should
return additional columns in JDBC3 that haven't been implemented yet.
See the todo list.

-O

pgsql-jdbc by date:

Previous
From: Oliver Jowett
Date:
Subject: Re: plans and estimates for supporting JDBC 3.0
Next
From: Dave Cramer
Date:
Subject: Re: summary of new features in JDBC 3.0