Re: UDT arrays - Mailing list pgsql-jdbc
From | Radosław Smogura |
---|---|
Subject | Re: UDT arrays |
Date | |
Msg-id | 201102101126.00740.rsmogura@softperience.eu Whole thread Raw |
In response to | UDT arrays (Lukas Eder <lukas.eder@gmail.com>) |
Responses |
Re: UDT arrays
Re: UDT arrays |
List | pgsql-jdbc |
I plan to sleep PGObjects, and wake for backward compatibility (maybe as deprectaed or some parts of methodes there - there are static methods, which causes problems with JDBC4 Exception model and some per connection specific functionaly). Arrays parsing is different in text and in binary mode, and binary mode requires more carefull casting. Actually current flow should allow to read any nested type, which is supported by ResultSet, form parent object (I putted only exception for getting result set with multidimensional arrays). I plan to give support for specific PG objects like box, but make them more portable, without internal connection with JDBC dirver logic (you should be able to serialize and deserialzie those objects on clients without postgresql.jar). I plan as well to give "plugable" support for custom PG objects, which can't be processed as UDT (above box is example). I think about mapping some PG objects to standard Java classes e.g. PG's box -> java.awt.Box (but this is far future). Above must be done in descriptive way, to be usable with DataSource and app servers, eg. @Resource private DataSource myPgDataSourceWithMyCustomObjects Both of those should be designed in fast way, low memory consuption and in way preventing writing thousend lines of code if binary format for given object will be different per DB level or per new protocol (see e.g. problems with bytea encoding in 9.x releases). Lukas Eder <lukas.eder@gmail.com> Thursday 10 February 2011 10:45:17 > Hi Radoslaw, > > Interesting news about SQLData, Input & Output. That's clearly the way to > go. So I assume you're going to be removing the PGobject from the JDBC > driver in a future release? But I still don't understand whether you are > actually going to plan to implement a combination of UDT and ARRAY, such as > > CREATE TYPE composite_type AS (f1 int, f2 text); > CREATE TABLE t (array_of_composites composite_type[]); > > This works in Postgres, but is not supported by the JDBC driver... Are you > going to address that as well, in the near future? > > Cheers > Lukas > > 2011/2/9 Radosław Smogura <rsmogura@softperience.eu> > > > Actully I've done support for Structs, with fixation of metdata bugs for > > those > > types (JDBC spec is not clear, about metadata), but only in binary mode. > > I will, probably, don't give support for text protocol, because I belive > > binary > > protocol is future (but here is ?). > > > > Currently > > 1. I need to give full support for SQLData, Input & Output, as well > > implement > > last type (time with timezone). > > 2. I need do something with DISTINCTS/DOMAINS > > > > Problem is with timestamap with timezone, as on this field backend is > > incompatible with JDBC, so probably driver will need to extend database, > > or I > > need to do some "unsafe" operations or throw exception for some > > situations. > > > > In both of this I need to do / write full tests for many compilations of > > resultset/arrays/structs. > > > > Some functionality will temporaly go away (eg. updating result sets, > > arrays returning result sets for mulitdimensional array, geometric > > types, and all PG*Objects will be sleeped too). > > > > I want to resolve some serius bugs about resultsets and SQLXML, too, > > before release (this with result set may wait, if only one person found > > it, and not > > even found full problem...), but SQLXML is important as XML is popular > > solution. > > > > Maybe "true" async notifications based on listener pattern will be > > included in > > release. > > > > Have a nice day > > > > Lukas Eder <lukas.eder@gmail.com> Tuesday 08 February 2011 00:26:58 > > > > > Hello, > > > > > > I was wondering, is JDBC driver support for the combination of UDT's > > > and arrays planned for the near future? I couldn't find any > > > documentation on the JDBC drivers website. > > > > > > Is there any specific reason (apart from the fact that UDT's and/or > > > ARRAYs are not used often) for this lack of implementation? Clearly, > > > the database itself supports this combination. I can easily insert and > > > select data from a table holding UDT arrays > > > > > > Cheers > > > Lukas
pgsql-jdbc by date: