From: | Kris Jurka <books(at)ejurka(dot)com> |
---|---|
To: | matrixx <matrixx(at)freenet(dot)de> |
Cc: | pgsql-jdbc(at)postgresql(dot)org |
Subject: | Re: NPE in BlobInputStream |
Date: | 2006-11-26 11:36:28 |
Message-ID: | Pine.BSO.4.64.0611260628100.2107@leary2.csoft.net |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-jdbc |
On Fri, 24 Nov 2006, matrixx wrote:
> im using the postgresql-8.1-407.jdbc3.jar driver over hibernate 3 to access
> databases.
>
> Our application currently runs with mysql and mssql drivers without any
> problems. With the postgresql driver i get the following exception:
>
> [ModuleProfile(dot)deserialize(at)AWT-EventQueue-0] ERROR: Error deserializing blob.
> java.lang.NullPointerException
> at
> org.postgresql.largeobject.BlobInputStream.close(BlobInputStream.java:115)
> at java.beans.XMLDecoder.close(XMLDecoder.java:152)
> ...
>
> I dont know if its a driver bug, or a hibernate issue.
>
It's a driver bug that's caused by one of two possible issues. It's
impossible to tell which from this stacktrace alone.
1) The BlobInputStream is violating the contract of the close method that
allows you to call it more than once.
2) You've called getInputStream more than once on a Blob and it can't
handle two streams simultaneously.
I've produced a fix for 1 and a very simple version of 2. Could you try
out this jar file and let me know if it works:
http://www.ejurka.com/pgsql/jars/mx/
Kris Jurka
Attachment | Content-Type | Size |
---|---|---|
blob.patch | text/plain | 2.5 KB |
From | Date | Subject | |
---|---|---|---|
Next Message | Kris Jurka | 2006-11-26 12:01:43 | Re: JDBC driver and stored proc dollars quoting bugged in |
Previous Message | Kris Jurka | 2006-11-26 11:03:08 | Re: binary tuple receiving patch v4 |