Re: 7.4x vs 8.1x - Mailing list pgsql-jdbc
From | Donald Fraser |
---|---|
Subject | Re: 7.4x vs 8.1x |
Date | |
Msg-id | 00d201c61610$b72941e0$0264a8c0@demolish1 Whole thread Raw |
In response to | 7.4x vs 8.1x ("Donald Fraser" <postgres@kiwi-fraser.net>) |
Responses |
Re: 7.4x vs 8.1x
|
List | pgsql-jdbc |
----- Original Message ----- From: "Dave Cramer" To: "Donald Fraser" > We certainly don't test it for that, why would you want to do this ? There are two main reasons for this: First we have a patched version which has the following changes: 1) Java style notifications for NOTIFY messages from the server. No polling involved. 2) Sub-classed the Java sql timestamp and sql date objects to support the postgresql infinity implementation. 3) SSL modification - allows SSL to use a client supplied certificate. 4) HTML formated error messages, turned on or off with a URL switch. 5) Ability to set the encoding used by the driver - not everyone wants to use UNICODE. I note that most of these things have been addressed but we would have to do a lot of testing to make sure everything worked. My normal approach to such things is thus: "if it isn't broken don't fix it"! We know our version of the driver works ok and therefore we wouldn't need to test it specifically... I also note that someone is attempting to implement notifications but it should be noted that the method they are attempting to use will fail! (http://archives.postgresql.org/pgsql-jdbc/2005-04/msg00056.php) The reason it will fail is that the available() method of the input stream does not work on SSL sockets! We originally implemented something similiar to this as it was the least amount of code base to hack, but when we started using SSL it stopped working. The reason is the available() method is not implemented on Sun's implementation of the SSL socket stream(it always returns a value of 0) - this was tested on the 1.4 micro version of the JVM. I logged this as a bug with Sun and they replyed that it was ment to be that way! Hence we had to take a more drastic approach and dig into another level of the code base and use the socket stream directly to achieve what turned out to be a better implementation - a non-polling notification system. I only just found the above link - so hopefully those concerned with this code in the latest release of the driver will read the above and take note! The second reason is that we have a lot of clients with the 7.4 driver and I don't want to have to force them to upgrade their software... The notification side of things is the only part that I see taking a lot of work to patch against the newer drivers as I noted there were some major changes to the code base between 7.4 and 8.0. In March this year I will have some time up my sleave and so I may take the leap forward and attempt to patch our code and if you're interested I'll pass it on. Regards Donald Fraser > You can use protocol version 2 and you shouldn't notice any (much) > difference. > > Dave > On 10-Jan-06, at 8:29 AM, Donald Fraser wrote: > > > I note that there are a lot of 'format' related changes from pre > > 8.1 to 8.1. > > Could someone inform me whether a 7.4.x JDBC driver will operate at > > all with > > a 8.1.x database? > > > > Thanks in advance, > > Donald Fraser
pgsql-jdbc by date: