Dear All,
I have problems with very slow staring up time of tomcat (about 15 minutes). I have tried many solutions but still the same result. I have took this thread dump using "kill -3 tomcatpid" while the 15 minutes of no response and here is the dump: Full thread dump Java HotSpot(TM) 64-Bit Server VM (1.5.0_10-b03 mixed mode): "Low Memory Detector" daemon prio=1 tid=0x00002aaaaaba1820 nid=0x70f9 runnable [0x0000000000000000..0x0000000000000000] "CompilerThread1" daemon prio=1 tid=0x00002aaaaab9fbf0 nid=0x70f8 waiting on condition [0x0000000000000000..0x0000000040c5a400] "CompilerThread0" daemon prio=1 tid=0x00002aaaaab9e640 nid=0x70f7 waiting on condition [0x0000000000000000..0x0000000040b59580] "AdapterThread" daemon prio=1 tid=0x00002aaaaab9cf20 nid=0x70f6 waiting on condition [0x0000000000000000..0x0000000000000000] "Signal Dispatcher" daemon prio=1 tid=0x00002aaaaab9bbc0 nid=0x70f5 waiting on condition [0x0000000000000000..0x0000000000000000] "Finalizer" daemon prio=1 tid=0x00002aaaaab87720 nid=0x70f4 in Object.wait() [0x0000000040857000..0x0000000040857d20] at java.lang.Object.wait(Native Method) - waiting on <0x00002aacefbf8c58> (a java.lang.ref.ReferenceQueue$Lock) at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:116) - locked <0x00002aacefbf8c58> (a java.lang.ref.ReferenceQueue$Lock) at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:132) at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:159) "Reference Handler" daemon prio=1 tid=0x00002aaaaab86ef0 nid=0x70f3 in Object.wait() [0x0000000040756000..0x0000000040756ea0] at java.lang.Object.wait(Native Method) - waiting on <0x00002aacefb404d8> (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 <0x00002aacefb404d8> (a java.lang.ref.Reference$Lock) "main" prio=1 tid=0x00000000401161f0 nid=0x70ed runnable [0x00007fffffdc1000..0x00007fffffdc35d0] at java.io.UnixFileSystem.list(Native Method) at java.io.File.list(File.java:937) at org.apache.naming.resources.FileDirContext.list(FileDirContext.java:894) at org.apache.naming.resources.FileDirContext.list(FileDirContext.java:311) at org.apache.naming.resources.ProxyDirContext.list(ProxyDirContext.java:482) at org.apache.catalina.startup.TldConfig.tldScanResourcePathsWebInf(TldConfig.j ava:632) at org.apache.catalina.startup.TldConfig.tldScanResourcePathsWebInf(TldConfig.j ava:647) at org.apache.catalina.startup.TldConfig.tldScanResourcePathsWebInf(TldConfig.j ava:647) at org.apache.catalina.startup.TldConfig.tldScanResourcePathsWebInf(TldConfig.j ava:647) at org.apache.catalina.startup.TldConfig.tldScanResourcePathsWebInf(TldConfig.j ava:647) at org.apache.catalina.startup.TldConfig.tldScanResourcePathsWebInf(TldConfig.j ava:647) at org.apache.catalina.startup.TldConfig.tldScanResourcePaths(TldConfig.java:60 1) at org.apache.catalina.startup.TldConfig.execute(TldConfig.java:282) at org.apache.catalina.core.StandardContext.processTlds(StandardContext.java:43 07) at org.apache.catalina.core.StandardContext.start(StandardContext.java:4144) - locked <0x00002aacefbf8e48> (a org.apache.catalina.core.StandardContext) at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:7 60) - locked <0x00002aacefbf9120> (a java.util.HashMap) at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:740) at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:544) at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920) at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883 ) at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492) at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138) at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311) at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSuppor t.java:120) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1022) - locked <0x00002aacefbf9160> (a org.apache.catalina.core.StandardHost) at org.apache.catalina.core.StandardHost.start(StandardHost.java:736) - locked <0x00002aacefbf9160> (a org.apache.catalina.core.StandardHost) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1014) - locked <0x00002aacefbf94c0> (a org.apache.catalina.core.StandardEngine) at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) at org.apache.catalina.core.StandardService.start(StandardService.java:448) - locked <0x00002aacefbf94c0> (a org.apache.catalina.core.StandardEngine) at org.apache.catalina.core.StandardServer.start(StandardServer.java:700) - locked <0x00002aacefbf9658> (a [Lorg.apache.catalina.Service;) at org.apache.catalina.startup.Catalina.start(Catalina.java:552) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39 ) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl .java:25) at java.lang.reflect.Method.invoke(Method.java:585) at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:295) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:433) "VM Thread" prio=1 tid=0x00002aaaaab829f0 nid=0x70f2 runnable "GC task thread#0 (ParallelGC)" prio=1 tid=0x0000000040132d50 nid=0x70ee runnable "GC task thread#1 (ParallelGC)" prio=1 tid=0x0000000040133bd0 nid=0x70ef runnable "GC task thread#2 (ParallelGC)" prio=1 tid=0x0000000040134a50 nid=0x70f0 runnable "GC task thread#3 (ParallelGC)" prio=1 tid=0x00000000401358d0 nid=0x70f1 runnable "VM Periodic Task Thread" prio=1 tid=0x00002aaaaaba3470 nid=0x70fa waiting on condition Please help me to understand this problem and how to fix it. Note: A clean copy of tomcat with no application starts in 1 seconds!! After deploying the same application on it took about 3 seconds!! The only difference I can tell is the slow one have a symbolic link in its webapps while the other not. Thanks a lot