Thanks for the suggestion. I tried autocommit false, but it didn't make any difference. This error seems to occur about once out of 30 times. I also printed Connection.isClosed after catching the exception, just to make sure the connection wasn't closed (since the error message implied the connection might be closed).

I also tried many wacky things to try to work around it, including: using TRANSACTION_SERIALIZABLE and synchronizing on a static variable to eliminate multi-threading as a cause. None of these affected the problem.

-- - RESTful Relational Database

--- On Wed, 12/30/09, Donald McLean <> wrote:

From: Donald McLean <>
Subject: Re: XJ073 The data in this BLOB or CLOB is no longer available
To: "Derby Discussion" <>
Date: Wednesday, December 30, 2009, 5:23 PM

This condition is very frequently caused when the user has autocommit
set to true. BLOBs and CLOBs can only be used inside a transaction
(i.e. autocommit set to false). Don't forget to commit the transaction
after you have finished with the BLOB/CLOB.

On Tue, Dec 29, 2009 at 5:15 PM, geoffrey hendrey <> wrote:
> On Derby I see the following error. "ERROR XJ073: The data in this
> BLOB or CLOB is no longer available.  The BLOB/CLOB's transaction may be
> committed, or its connection is closed." Are there any known issues around
> this? It occurs intermittently, and I've never seen in happen twice in a
> row. I don't think I'm prematurely closing the connection. I found a Jira
> issue around this, but it seemed like the discussion concluded it was user
> error. Thought I would ping the list to see if there are any known bugs on
> this.
Family photographs are a critical legacy for
ourselves and our descendants. Protect that
legacy with a digital backup and recovery plan.

Join the photo preservation advocacy Facebook group: