Thread: problem with PSQLException/PSQLState

problem with PSQLException/PSQLState

From
Jason Briggs
Date:
Just discovered a possible issue with the SQLException thrown by the 7.4
beta3 jdbc driver.

PSQLException used to contain only a message, but now also has a ref to
org.postgresql.util.PSQLState.  PSQLState isn't serializable and because
a SQLException is supposed to be serializable, this causes a problem in
situations where you might want to propogate your exceptions across the
wire (i.e. app server to client).

The problem is fixed if you change PSQLState to implement Serializable,
as follows:

[[SNIP

package org.postgresql.util;

import java.io.Serializable;

public class PSQLState implements Serializable
{

]]



J

--
_______________________________________________
Jason Briggs
  . Development Manager ... Lateral NZ
  . (a division of Lateral Profiles)
  . -- Finalist - The TUANZ Mobile Service of the Year 2003
  . -- Finalist - The TUANZ Telecommunications Innovation Award 2003
  .


Re: problem with PSQLException/PSQLState

From
Kris Jurka
Date:

On Wed, 3 Dec 2003, Jason Briggs wrote:

> Just discovered a possible issue with the SQLException thrown by the 7.4
> beta3 jdbc driver.
>
> PSQLException used to contain only a message, but now also has a ref to
> org.postgresql.util.PSQLState.  PSQLState isn't serializable and because
> a SQLException is supposed to be serializable, this causes a problem in
> situations where you might want to propogate your exceptions across the
> wire (i.e. app server to client).
>
> The problem is fixed if you change PSQLState to implement Serializable,
> as follows:

Here's a patch to add the change indicated and more importantly a test
case so this won't happen again.

Kris Jurka



Re: problem with PSQLException/PSQLState

From
Kris Jurka
Date:

On Tue, 9 Dec 2003, Kris Jurka wrote:

>
>
> On Wed, 3 Dec 2003, Jason Briggs wrote:
>
> > Just discovered a possible issue with the SQLException thrown by the 7.4
> > beta3 jdbc driver.
> >
> > PSQLException used to contain only a message, but now also has a ref to
> > org.postgresql.util.PSQLState.  PSQLState isn't serializable and because
> > a SQLException is supposed to be serializable, this causes a problem in
> > situations where you might want to propogate your exceptions across the
> > wire (i.e. app server to client).
> >
> > The problem is fixed if you change PSQLState to implement Serializable,
> > as follows:
>
> Here's a patch to add the change indicated and more importantly a test
> case so this won't happen again.
>

This time with the actual patch.

Kris Jurka


Attachment