[jboss-dev] shutdown deadlock

Adrian Brock abrock at redhat.com
Tue Oct 28 06:05:36 EDT 2008


On Mon, 2008-10-27 at 13:39 -0700, Scott Stark wrote:
> I just ran into this shutdown deadlock stopping the current jbossas 
> trunk profileservice config. Looks like a problem with some background 
> hsqldb thread our HypersonicDatabase mbean wrapper.

It's entirely a Hypersonic problem. If you trim your thread dump
to the relevant bit there's an issue with

HsqlTimer.cancel() -> HsqlTimer$Task.cancel()
HsqlTimer.nextTask() -> HsqlTimer$Task.isCancelled()

locking some Object and HsqlTimer$TaskQueue in different orders.

> 
> "JBoss Shutdown Hook" daemon prio=5 tid=0x3e4a3e30 nid=0xd8d800 waiting 
> for monitor entry [0xb1499000..0xb149ad90]
>     at org.hsqldb.lib.HsqlTimer$TaskQueue.signalTaskCancelled(Unknown 
> Source)
>     - waiting to lock <0x0e9dbe10> (a org.hsqldb.lib.HsqlTimer$TaskQueue)
>     at org.hsqldb.lib.HsqlTimer$Task.cancel(Unknown Source)
>     - locked <0x06266568> (a java.lang.Object)
>     at org.hsqldb.lib.HsqlTimer.cancel(Unknown Source)
>     at org.hsqldb.scriptio.ScriptWriterBase.stop(Unknown Source)
>     at org.hsqldb.scriptio.ScriptWriterBase.close(Unknown Source)
>     at org.hsqldb.persist.Log.closeLog(Unknown Source)
>     - locked <0x06221b70> (a org.hsqldb.persist.Log)
>     at org.hsqldb.persist.Log.close(Unknown Source)

> "HSQLDB Timer @6e4d5b" daemon prio=5 tid=0x3e45a030 nid=0x3f2fd400 
> waiting for monitor entry [0xb263d000..0xb263dd90]
>     at org.hsqldb.lib.HsqlTimer$Task.isCancelled(Unknown Source)
>     - waiting to lock <0x06266568> (a java.lang.Object)
>     at org.hsqldb.lib.HsqlTimer$TaskQueue.peekTask(Unknown Source)
>     - locked <0x0e9dbe10> (a org.hsqldb.lib.HsqlTimer$TaskQueue)
>     at org.hsqldb.lib.HsqlTimer.nextTask(Unknown Source)
>     - locked <0x0e9dbe10> (a org.hsqldb.lib.HsqlTimer$TaskQueue)
>     at org.hsqldb.lib.HsqlTimer$TaskRunner.run(Unknown Source)
>     at java.lang.Thread.run(Thread.java:613)

-- 
xxxxxxxxxxxxxxxxxxxxxxxxxxxx
Adrian Brock
Chief Scientist
JBoss, a division of Red Hat
xxxxxxxxxxxxxxxxxxxxxxxxxxxx




More information about the jboss-development mailing list