On Fri, Mar 14, 2008 at 3:09 PM, Kathey Marsden <kmarsdenderby@sbcglobal.net> wrote:
Oystein Grovlen wrote:
> This means that the thread accessing the database have been
> interrupted.  Do you have code that may interrupt running threads?
> In this particular case it happened while the thread was flushing log
> to disk during commit.  From the log it seems that the db is not able
> to recover from this; it is not able to rollback the transaction, and
> the database is shutdown since it will be left in an inconsistent state.
> I think this indicates a bug in Derby.  For robustness, it needs to
> handle that threads are interrupted.
Is this the same as DERBY-151?

Yes it sounds like it. There is a workaround with clearing the interrupt flag on the thread but it may not always be possible to apply this workaround if some framework is causing this and not the application logic written by some user. In any case, Derby should not left a database in some inconsistent state if an interrupt is issued outside of Derby upon writing to the log for instance.