Hello,

I'm trying to install Archiva as a WAR in a Tomcat-6 distribution.
Everything works fine except Tomcat restart (every night to roll log files).

Tomcat won't start if there are non-daemon threads blocked, it seems
it's the case for some QuartzScheduler ones.
Here is the full thread dump of my JVM, if anybody has already
experienced the same problem, any help would be greatly appreciated.

Thanks

INFO: Arr�t de Coyote HTTP/1.1 sur http-20120
Full thread dump Java HotSpot(TM) Server VM (1.5.0_15-b04 mixed mode):

"DestroyJavaVM" prio=1 tid=0xa22c8880 nid=0x7382 waiting on condition
[0x00000000..0xbfe32360]

"http-20120-1" daemon prio=1 tid=0x0a16ef08 nid=0xd8a in Object.wait()
[0xa036c000..0xa036d130]
    at java.lang.Object.wait(Native Method)
    - waiting on <0xb1380708> (a
org.apache.tomcat.util.net.JIoEndpoint$Worker)
    at java.lang.Object.wait(Object.java:474)
    at
org.apache.tomcat.util.net.JIoEndpoint$Worker.await(JIoEndpoint.java:416)
    - locked <0xb1380708> (a org.apache.tomcat.util.net.JIoEndpoint$Worker)
    at
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:442)
    at java.lang.Thread.run(Thread.java:595)

"pool-1-thread-1" prio=1 tid=0xa1dfde30 nid=0x74b7 in Object.wait()
[0xa03ed000..0xa03ee130]
    at java.lang.Object.wait(Native Method)
    - waiting on <0xaa12f3c8> (a
edu.emory.mathcs.backport.java.util.concurrent.LinkedBlockingQueue$SerializableLock)
    at java.lang.Object.wait(Object.java:474)
    at
edu.emory.mathcs.backport.java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:316)
    - locked <0xaa12f3c8> (a
edu.emory.mathcs.backport.java.util.concurrent.LinkedBlockingQueue$SerializableLock)
    at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:921)
    at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:980)
    at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:528)
    at java.lang.Thread.run(Thread.java:595)

"pool-2-thread-1" prio=1 tid=0x0a8c4070 nid=0x74b6 in Object.wait()
[0xa046e000..0xa046efb0]
    at java.lang.Object.wait(Native Method)
    - waiting on <0xaa12f660> (a
edu.emory.mathcs.backport.java.util.concurrent.LinkedBlockingQueue$SerializableLock)
    at java.lang.Object.wait(Object.java:474)
    at
edu.emory.mathcs.backport.java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:316)
    - locked <0xaa12f660> (a
edu.emory.mathcs.backport.java.util.concurrent.LinkedBlockingQueue$SerializableLock)
    at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:921)
    at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:980)
    at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:528)
    at java.lang.Thread.run(Thread.java:595)

"TP-Processor4" daemon prio=1 tid=0x0a865a68 nid=0x73aa in Object.wait()
[0xa3393000..0xa3393eb0]
    at java.lang.Object.wait(Native Method)
    - waiting on <0xaa1a87e8> (a org.apache.jk.common.ChannelSocket)
    at java.lang.Object.wait(Object.java:474)
    at org.apache.jk.common.ChannelSocket.accept(ChannelSocket.java:300)
    - locked <0xaa1a87e8> (a org.apache.jk.common.ChannelSocket)
    at
org.apache.jk.common.ChannelSocket.acceptConnections(ChannelSocket.java:660)
    at
org.apache.jk.common.ChannelSocket$SocketAcceptor.runIt(ChannelSocket.java:870)
    at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:690)
    at java.lang.Thread.run(Thread.java:595)

"TP-Processor3" daemon prio=1 tid=0x0a865dd0 nid=0x73a9 runnable
[0xa3414000..0xa3414f30]
    at java.net.SocketInputStream.socketRead0(Native Method)
    at java.net.SocketInputStream.read(SocketInputStream.java:129)
    at java.io.BufferedInputStream.fill(BufferedInputStream.java:218)
    at java.io.BufferedInputStream.read1(BufferedInputStream.java:256)
    at java.io.BufferedInputStream.read(BufferedInputStream.java:313)
    - locked <0xaa64d748> (a java.io.BufferedInputStream)
    at org.apache.jk.common.ChannelSocket.read(ChannelSocket.java:620)
    at org.apache.jk.common.ChannelSocket.receive(ChannelSocket.java:558)
    at
org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:685)
    at
org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:889)
    at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:690)
    at java.lang.Thread.run(Thread.java:595)

"http-20120-Acceptor-0" daemon prio=1 tid=0x0a0b6840 nid=0x73a6 waiting
on condition [0xa3597000..0xa35980b0]
    at java.lang.Thread.sleep(Native Method)
    at
org.apache.tomcat.util.net.JIoEndpoint$Acceptor.run(JIoEndpoint.java:302)
    at java.lang.Thread.run(Thread.java:595)

"Thread-2" daemon prio=1 tid=0x0a2586e8 nid=0x73a4 in Object.wait()
[0xa076f000..0xa076ffb0]
    at java.lang.Object.wait(Native Method)
    at java.lang.Object.wait(Object.java:432)
    at
edu.emory.mathcs.backport.java.util.concurrent.TimeUnit.timedWait(TimeUnit.java:364)
    at
edu.emory.mathcs.backport.java.util.concurrent.LinkedBlockingQueue.poll(LinkedBlockingQueue.java:349)
    - locked <0xa9f2a0f0> (a
edu.emory.mathcs.backport.java.util.concurrent.LinkedBlockingQueue$SerializableLock)
    at
org.codehaus.plexus.taskqueue.DefaultTaskQueue.poll(DefaultTaskQueue.java:228)
    at
org.codehaus.plexus.taskqueue.execution.ThreadedTaskQueueExecutor$ExecutorRunnable.run(ThreadedTaskQueueExecutor.java:94)

"Thread-1" daemon prio=1 tid=0x0a25e298 nid=0x73a3 in Object.wait()
[0xa07f0000..0xa07f1030]
    at java.lang.Object.wait(Native Method)
    at java.lang.Object.wait(Object.java:432)
    at
edu.emory.mathcs.backport.java.util.concurrent.TimeUnit.timedWait(TimeUnit.java:364)
    at
edu.emory.mathcs.backport.java.util.concurrent.LinkedBlockingQueue.poll(LinkedBlockingQueue.java:349)
    - locked <0xa9f7e780> (a
edu.emory.mathcs.backport.java.util.concurrent.LinkedBlockingQueue$SerializableLock)
    at
org.codehaus.plexus.taskqueue.DefaultTaskQueue.poll(DefaultTaskQueue.java:228)
    at
org.codehaus.plexus.taskqueue.execution.ThreadedTaskQueueExecutor$ExecutorRunnable.run(ThreadedTaskQueueExecutor.java:94)

"derby.rawStoreDaemon" daemon prio=1 tid=0x0a882c88 nid=0x73a2 in
Object.wait() [0xa0871000..0xa0871eb0]
    at java.lang.Object.wait(Native Method)
    - waiting on <0xa9f19de0> (a
org.apache.derby.impl.services.daemon.BasicDaemon)
    at org.apache.derby.impl.services.daemon.BasicDaemon.rest(Unknown
Source)
    - locked <0xa9f19de0> (a
org.apache.derby.impl.services.daemon.BasicDaemon)
    at org.apache.derby.impl.services.daemon.BasicDaemon.run(Unknown Source)
    at java.lang.Thread.run(Thread.java:595)

"defaultScheduler_QuartzSchedulerThread" prio=1 tid=0x0aa46aa0
nid=0x73a1 waiting on condition [0xa08f2000..0xa08f2f30]
    at java.lang.Thread.sleep(Native Method)
    at
org.quartz.core.QuartzSchedulerThread.run(QuartzSchedulerThread.java:399)

"defaultScheduler_Worker-14" prio=1 tid=0x0a728590 nid=0x73a0 in
Object.wait() [0xa0973000..0xa0973db0]
    at java.lang.Object.wait(Native Method)
    at
org.quartz.simpl.SimpleThreadPool.getNextRunnable(SimpleThreadPool.java:423)
    - locked <0xa9f1e638> (a java.lang.Object)
    at
org.quartz.simpl.SimpleThreadPool.access$000(SimpleThreadPool.java:53)
    at
org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:514)

"defaultScheduler_Worker-13" prio=1 tid=0x0a938fe0 nid=0x739f in
Object.wait() [0xa09f4000..0xa09f4e30]
    at java.lang.Object.wait(Native Method)
    at
org.quartz.simpl.SimpleThreadPool.getNextRunnable(SimpleThreadPool.java:423)
    - locked <0xa9f1e638> (a java.lang.Object)
    at
org.quartz.simpl.SimpleThreadPool.access$000(SimpleThreadPool.java:53)
    at
org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:514)

"defaultScheduler_Worker-12" prio=1 tid=0x0a938120 nid=0x739e in
Object.wait() [0xa0a75000..0xa0a760b0]
    at java.lang.Object.wait(Native Method)
    at
org.quartz.simpl.SimpleThreadPool.getNextRunnable(SimpleThreadPool.java:423)
    - locked <0xa9f1e638> (a java.lang.Object)
    at
org.quartz.simpl.SimpleThreadPool.access$000(SimpleThreadPool.java:53)
    at
org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:514)

"defaultScheduler_Worker-11" prio=1 tid=0x0a366c20 nid=0x739d in
Object.wait() [0xa0af7000..0xa0af7130]
    at java.lang.Object.wait(Native Method)
    at
org.quartz.simpl.SimpleThreadPool.getNextRunnable(SimpleThreadPool.java:423)
    - locked <0xa9f1e638> (a java.lang.Object)
    at
org.quartz.simpl.SimpleThreadPool.access$000(SimpleThreadPool.java:53)
    at
org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:514)

"defaultScheduler_Worker-10" prio=1 tid=0x0a6ee428 nid=0x739c in
Object.wait() [0xa0b77000..0xa0b77fb0]
    at java.lang.Object.wait(Native Method)
    at
org.quartz.simpl.SimpleThreadPool.getNextRunnable(SimpleThreadPool.java:423)
    - locked <0xa9f1e638> (a java.lang.Object)
    at
org.quartz.simpl.SimpleThreadPool.access$000(SimpleThreadPool.java:53)
    at
org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:514)

"defaultScheduler_Worker-9" prio=1 tid=0x0a6ed568 nid=0x739b in
Object.wait() [0xa0bf8000..0xa0bf9030]
    at java.lang.Object.wait(Native Method)
    at
org.quartz.simpl.SimpleThreadPool.getNextRunnable(SimpleThreadPool.java:423)
    - locked <0xa9f1e638> (a java.lang.Object)
    at
org.quartz.simpl.SimpleThreadPool.access$000(SimpleThreadPool.java:53)
    at
org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:514)

"defaultScheduler_Worker-8" prio=1 tid=0x0a71bb40 nid=0x739a in
Object.wait() [0xa0c79000..0xa0c79eb0]
    at java.lang.Object.wait(Native Method)
    at
org.quartz.simpl.SimpleThreadPool.getNextRunnable(SimpleThreadPool.java:423)
    - locked <0xa9f1e638> (a java.lang.Object)
    at
org.quartz.simpl.SimpleThreadPool.access$000(SimpleThreadPool.java:53)
    at
org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:514)

"defaultScheduler_Worker-7" prio=1 tid=0x0a922868 nid=0x7399 in
Object.wait() [0xa0cfa000..0xa0cfaf30]
    at java.lang.Object.wait(Native Method)
    at
org.quartz.simpl.SimpleThreadPool.getNextRunnable(SimpleThreadPool.java:423)
    - locked <0xa9f1e638> (a java.lang.Object)
    at
org.quartz.simpl.SimpleThreadPool.access$000(SimpleThreadPool.java:53)
    at
org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:514)

"defaultScheduler_Worker-6" prio=1 tid=0x0a6e1738 nid=0x7398 in
Object.wait() [0xa0d7b000..0xa0d7bdb0]
    at java.lang.Object.wait(Native Method)
    at
org.quartz.simpl.SimpleThreadPool.getNextRunnable(SimpleThreadPool.java:423)
    - locked <0xa9f1e638> (a java.lang.Object)
    at
org.quartz.simpl.SimpleThreadPool.access$000(SimpleThreadPool.java:53)
    at
org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:514)

"defaultScheduler_Worker-5" prio=1 tid=0x0a9723a0 nid=0x7397 in
Object.wait() [0xa0dfc000..0xa0dfce30]
    at java.lang.Object.wait(Native Method)
    at
org.quartz.simpl.SimpleThreadPool.getNextRunnable(SimpleThreadPool.java:423)
    - locked <0xa9f1e638> (a java.lang.Object)
    at
org.quartz.simpl.SimpleThreadPool.access$000(SimpleThreadPool.java:53)
    at
org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:514)

"defaultScheduler_Worker-4" prio=1 tid=0x0ab0abb8 nid=0x7396 in
Object.wait() [0xa0e7d000..0xa0e7e0b0]
    at java.lang.Object.wait(Native Method)
    at
org.quartz.simpl.SimpleThreadPool.getNextRunnable(SimpleThreadPool.java:423)
    - locked <0xa9f1e638> (a java.lang.Object)
    at
org.quartz.simpl.SimpleThreadPool.access$000(SimpleThreadPool.java:53)
    at
org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:514)

"defaultScheduler_Worker-3" prio=1 tid=0x0a533780 nid=0x7395 in
Object.wait() [0xa0eff000..0xa0eff130]
    at java.lang.Object.wait(Native Method)
    at
org.quartz.simpl.SimpleThreadPool.getNextRunnable(SimpleThreadPool.java:423)
    - locked <0xa9f1e638> (a java.lang.Object)
    at
org.quartz.simpl.SimpleThreadPool.access$000(SimpleThreadPool.java:53)
    at
org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:514)

"defaultScheduler_Worker-2" prio=1 tid=0x0a86fb00 nid=0x7394 in
Object.wait() [0xa1cfe000..0xa1cfefb0]
    at java.lang.Object.wait(Native Method)
    at
org.quartz.simpl.SimpleThreadPool.getNextRunnable(SimpleThreadPool.java:423)
    - locked <0xa9f1e638> (a java.lang.Object)
    at
org.quartz.simpl.SimpleThreadPool.access$000(SimpleThreadPool.java:53)
    at
org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:514)

"defaultScheduler_Worker-1" prio=1 tid=0x0a9fe978 nid=0x7393 in
Object.wait() [0xa24ae000..0xa24af030]
    at java.lang.Object.wait(Native Method)
    at
org.quartz.simpl.SimpleThreadPool.getNextRunnable(SimpleThreadPool.java:423)
    - locked <0xa9f1e638> (a java.lang.Object)
    at
org.quartz.simpl.SimpleThreadPool.access$000(SimpleThreadPool.java:53)
    at
org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:514)

"defaultScheduler_Worker-0" prio=1 tid=0x0a793e78 nid=0x7392 in
Object.wait() [0xa252f000..0xa252feb0]
    at java.lang.Object.wait(Native Method)
    at
org.quartz.simpl.SimpleThreadPool.getNextRunnable(SimpleThreadPool.java:423)
    - locked <0xa9f1e638> (a java.lang.Object)
    at
org.quartz.simpl.SimpleThreadPool.access$000(SimpleThreadPool.java:53)
    at
org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:514)

"derby.rawStoreDaemon" daemon prio=1 tid=0x0a8fb1c8 nid=0x7391 in
Object.wait() [0xa3ec9000..0xa3ec9f30]
    at java.lang.Object.wait(Native Method)
    - waiting on <0xa9ac4b40> (a
org.apache.derby.impl.services.daemon.BasicDaemon)
    at org.apache.derby.impl.services.daemon.BasicDaemon.rest(Unknown
Source)
    - locked <0xa9ac4b40> (a
org.apache.derby.impl.services.daemon.BasicDaemon)
    at org.apache.derby.impl.services.daemon.BasicDaemon.run(Unknown Source)
    at java.lang.Thread.run(Thread.java:595)

"derby.antiGC" daemon prio=1 tid=0xa3966a38 nid=0x7390 in Object.wait()
[0xa45c0000..0xa45c0db0]
    at java.lang.Object.wait(Native Method)
    - waiting on <0xa9acbb58> (a
org.apache.derby.impl.services.monitor.AntiGC)
    at java.lang.Object.wait(Object.java:474)
    at org.apache.derby.impl.services.monitor.AntiGC.run(Unknown Source)
    - locked <0xa9acbb58> (a org.apache.derby.impl.services.monitor.AntiGC)
    at java.lang.Thread.run(Thread.java:595)

"Low Memory Detector" daemon prio=1 tid=0x09d8b948 nid=0x738e runnable
[0x00000000..0x00000000]

"CompilerThread1" daemon prio=1 tid=0x09d8a4c8 nid=0x738d waiting on
condition [0x00000000..0xa4d2a358]

"CompilerThread0" daemon prio=1 tid=0x09d89470 nid=0x738c waiting on
condition [0x00000000..0xa4dab1d8]

"AdapterThread" daemon prio=1 tid=0x09d88348 nid=0x738b waiting on
condition [0x00000000..0x00000000]

"Signal Dispatcher" daemon prio=1 tid=0x09d87538 nid=0x738a waiting on
condition [0x00000000..0x00000000]

"Finalizer" daemon prio=1 tid=0x09d7cce8 nid=0x7389 in Object.wait()
[0xa512e000..0xa512ef30]
    at java.lang.Object.wait(Native Method)
    - waiting on <0xa9653a10> (a java.lang.ref.ReferenceQueue$Lock)
    at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:120)
    - locked <0xa9653a10> (a java.lang.ref.ReferenceQueue$Lock)
    at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:136)
    at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:159)

"Reference Handler" daemon prio=1 tid=0x09d7c7c0 nid=0x7388 in
Object.wait() [0xa51af000..0xa51afdb0]
    at java.lang.Object.wait(Native Method)
    - waiting on <0xa965cb48> (a java.lang.ref.Reference$Lock)
    at java.lang.Object.wait(Object.java:474)
    at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:116)
    - locked <0xa965cb48> (a java.lang.ref.Reference$Lock)

"VM Thread" prio=1 tid=0x09d7a270 nid=0x7387 runnable

"GC task thread#0 (ParallelGC)" prio=1 tid=0x09cdf658 nid=0x7383 runnable

"GC task thread#1 (ParallelGC)" prio=1 tid=0x09ce02a8 nid=0x7384 runnable

"GC task thread#2 (ParallelGC)" prio=1 tid=0x09ce0ee0 nid=0x7385 runnable

"GC task thread#3 (ParallelGC)" prio=1 tid=0x09ce1b18 nid=0x7386 runnable

"VM Periodic Task Thread" prio=1 tid=0x09cd6bb8 nid=0x738f waiting on
condition

Mathieu LARCHET
Centre de Ressources Informatiques
Universite Nancy 2

Reply via email to