Обсуждение: Using a 7_4 JDBC driver to connect to 8.0

Поиск
Список
Период
Сортировка

Using a 7_4 JDBC driver to connect to 8.0

От
Csaba Nagy
Дата:
Is this supported ? I have a deployed code which connects now to 7.4,
and I would like to upgrade the server to 8.0. Changing the JDBC driver
too would mean to change a lot of our code, which we can only do in a
new release, but the DB migration should happen before we can release
the new version.
I briefly tested the 7.4 driver with 8.0 server, and it seems to mostly
work except it hangs consistently in a particular operation (I was
testing our web pages). A thread dump taken after the hang shows always
the same:

        at java.net.SocketInputStream.socketRead0(Native Method)
        at java.net.SocketInputStream.read(SocketInputStream.java:129)
        at
java.io.BufferedInputStream.fill(BufferedInputStream.java:218)
        at
java.io.BufferedInputStream.read(BufferedInputStream.java:235)
        - locked <0xec63f5c0> (a java.io.BufferedInputStream)
        at org.postgresql.core.PGStream.ReceiveChar(PGStream.java:166)
        at
org.postgresql.core.QueryExecutor.executeV3(QueryExecutor.java:127)
        - locked <0xec63e548> (a org.postgresql.core.PGStream)
        at
org.postgresql.core.QueryExecutor.execute(QueryExecutor.java:100)
        at
org.postgresql.core.QueryExecutor.execute(QueryExecutor.java:43)
        at
org.postgresql.jdbc1.AbstractJdbc1Statement.execute(AbstractJdbc1Statement.java:517)
        at
org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:50)
        at sun.reflect.GeneratedMethodAccessor13.invoke(Unknown Source)
        at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:585)
        at
org.postgresql.jdbc2.optional.PooledConnectionImpl$StatementHandler.invoke(PooledConnectionImpl.java:452)
        at $Proxy2.execute(Unknown Source)
 [...our code follows...]


Do I have any chance to make this combination (7_4 driver/8.0 server)
work fine ? If not my only chance is to stay with the 7_4 server :-/

Thanks,
Csaba.



Re: Using a 7_4 JDBC driver to connect to 8.0

От
Csaba Nagy
Дата:
Nevermind, it works fine. I was just trying out a new SQL tool and
executed some DDLs, and it had autocommit off... oh dear... and my test
system was waiting for me to commit. Sorry for the noise...

Cheers,
Csaba.


On Thu, 2005-07-14 at 18:23, Csaba Nagy wrote:
> Is this supported ? I have a deployed code which connects now to 7.4,
> and I would like to upgrade the server to 8.0. Changing the JDBC driver
> too would mean to change a lot of our code, which we can only do in a
> new release, but the DB migration should happen before we can release
> the new version.
> I briefly tested the 7.4 driver with 8.0 server, and it seems to mostly
> work except it hangs consistently in a particular operation (I was
> testing our web pages). A thread dump taken after the hang shows always
> the same:
>
>         at java.net.SocketInputStream.socketRead0(Native Method)
>         at java.net.SocketInputStream.read(SocketInputStream.java:129)
>         at
> java.io.BufferedInputStream.fill(BufferedInputStream.java:218)
>         at
> java.io.BufferedInputStream.read(BufferedInputStream.java:235)
>         - locked <0xec63f5c0> (a java.io.BufferedInputStream)
>         at org.postgresql.core.PGStream.ReceiveChar(PGStream.java:166)
>         at
> org.postgresql.core.QueryExecutor.executeV3(QueryExecutor.java:127)
>         - locked <0xec63e548> (a org.postgresql.core.PGStream)
>         at
> org.postgresql.core.QueryExecutor.execute(QueryExecutor.java:100)
>         at
> org.postgresql.core.QueryExecutor.execute(QueryExecutor.java:43)
>         at
> org.postgresql.jdbc1.AbstractJdbc1Statement.execute(AbstractJdbc1Statement.java:517)
>         at
> org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:50)
>         at sun.reflect.GeneratedMethodAccessor13.invoke(Unknown Source)
>         at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:585)
>         at
> org.postgresql.jdbc2.optional.PooledConnectionImpl$StatementHandler.invoke(PooledConnectionImpl.java:452)
>         at $Proxy2.execute(Unknown Source)
>  [...our code follows...]
>
>
> Do I have any chance to make this combination (7_4 driver/8.0 server)
> work fine ? If not my only chance is to stay with the 7_4 server :-/
>
> Thanks,
> Csaba.
>
>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 3: Have you checked our extensive FAQ?
>
>                http://www.postgresql.org/docs/faq


Re: Using a 7_4 JDBC driver to connect to 8.0

От
Oliver Jowett
Дата:
Csaba Nagy wrote:
> Is this supported ?

Not really, we don't test it. It might work, but..

There are definitely forward-compatibility problems with earlier
drivers, e.g. with 7.3's server-side autocommit settings.

-O

Re: Using a 7_4 JDBC driver to connect to 8.0

От
Csaba Nagy
Дата:
OK, this one seems to work fine, at least for our purposes. Our QA is
running with this setup for some time, I guess they've would have find
out if it doesn't work :-D
See my follow-up, it was my mistake which caused the suspicion...

Cheers,
Csaba.

On Fri, 2005-07-15 at 02:07, Oliver Jowett wrote:
> Csaba Nagy wrote:
> > Is this supported ?
>
> Not really, we don't test it. It might work, but..
>
> There are definitely forward-compatibility problems with earlier
> drivers, e.g. with 7.3's server-side autocommit settings.
>
> -O