tomcat-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Maxim Kuleshov <maxim.kules...@gmail.com>
Subject Re: Tomcat starts slow
Date Wed, 11 Aug 2010 06:45:05 GMT
2010/8/10 Christopher Schultz <chris@christopherschultz.net>

>
> It could be that Tomcat is attempting to resolve the SYSTEM URL for
> certain XML files it uses to configure itself. Could you re-enable the
> DROP and take a thread dump during the long wait? That will help
> nail-down the problem. Perhaps Tomcat can be modified so that it does
> not perform this look-up.
>
>
Oh, it's my misunderstanding - I made thread dump earlier, but thought
it only being produced for non-blocked by I/O threads, so it's not complete
and useless.

Now, I reviewed old dump and made new one. That's it - "main" thread hangs
in some socket operation.

Full thread dump Java HotSpot(TM) 64-Bit Server VM (14.2-b01 mixed mode):

"Attach Listener" daemon prio=10 tid=0x00007f60aeec7000 nid=0x6275 waiting
on condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"GC Daemon" daemon prio=10 tid=0x00007f60aecc3800 nid=0x6254 in
Object.wait() [0x0000000040c31000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x00007f60b4e701d0> (a sun.misc.GC$LatencyLock)
at sun.misc.GC$Daemon.run(GC.java:100)
- locked <0x00007f60b4e701d0> (a sun.misc.GC$LatencyLock)

"Low Memory Detector" daemon prio=10 tid=0x00000000401a9800 nid=0x6252
runnable [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"CompilerThread1" daemon prio=10 tid=0x00007f60a8001000 nid=0x6251 waiting
on condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"CompilerThread0" daemon prio=10 tid=0x00000000401a5000 nid=0x6250 waiting
on condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"Signal Dispatcher" daemon prio=10 tid=0x00000000401a3000 nid=0x624f
runnable [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"Finalizer" daemon prio=10 tid=0x0000000040184800 nid=0x624e in
Object.wait() [0x0000000041e07000]
   java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x00007f60b4e70ac0> (a java.lang.ref.ReferenceQueue$Lock)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:118)
- locked <0x00007f60b4e70ac0> (a java.lang.ref.ReferenceQueue$Lock)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:134)
at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:159)

"Reference Handler" daemon prio=10 tid=0x000000004017d800 nid=0x624d in
Object.wait() [0x0000000041d06000]
   java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x00007f60b4e701b0> (a java.lang.ref.Reference$Lock)
at java.lang.Object.wait(Object.java:485)
at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:116)
- locked <0x00007f60b4e701b0> (a java.lang.ref.Reference$Lock)

"main" prio=10 tid=0x0000000040113000 nid=0x6243 runnable
[0x0000000041fc0000]
   java.lang.Thread.State: RUNNABLE
at java.net.PlainSocketImpl.initProto(Native Method)
at java.net.PlainSocketImpl.<clinit>(PlainSocketImpl.java:84)
at java.net.ServerSocket.setImpl(ServerSocket.java:236)
at java.net.ServerSocket.<init>(ServerSocket.java:178)
at java.net.ServerSocket.<init>(ServerSocket.java:141)
at
org.apache.tomcat.util.net.DefaultServerSocketFactory.createSocket(DefaultServerSocketFactory.java:50)
at org.apache.tomcat.util.net.JIoEndpoint.init(JIoEndpoint.java:538)
at org.apache.coyote.http11.Http11Protocol.init(Http11Protocol.java:176)
at org.apache.catalina.connector.Connector.initialize(Connector.java:1014)
at
org.apache.catalina.core.StandardService.initialize(StandardService.java:680)
- locked <0x00007f60b4ec2650> (a [Lorg.apache.catalina.connector.Connector;)
at
org.apache.catalina.core.StandardServer.initialize(StandardServer.java:795)
at org.apache.catalina.startup.Catalina.load(Catalina.java:524)
at org.apache.catalina.startup.Catalina.load(Catalina.java:548)
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:597)
at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:261)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)

"VM Thread" prio=10 tid=0x0000000040176800 nid=0x624c runnable

"GC task thread#0 (ParallelGC)" prio=10 tid=0x000000004011d000 nid=0x6244
runnable

"GC task thread#1 (ParallelGC)" prio=10 tid=0x000000004011f000 nid=0x6245
runnable

"GC task thread#2 (ParallelGC)" prio=10 tid=0x0000000040120800 nid=0x6246
runnable

"GC task thread#3 (ParallelGC)" prio=10 tid=0x0000000040122800 nid=0x6247
runnable

"GC task thread#4 (ParallelGC)" prio=10 tid=0x0000000040124800 nid=0x6248
runnable

"GC task thread#5 (ParallelGC)" prio=10 tid=0x0000000040126000 nid=0x6249
runnable

"GC task thread#6 (ParallelGC)" prio=10 tid=0x0000000040128000 nid=0x624a
runnable

"GC task thread#7 (ParallelGC)" prio=10 tid=0x000000004012a000 nid=0x624b
runnable

"VM Periodic Task Thread" prio=10 tid=0x00000000401ac000 nid=0x6253 waiting
on condition

JNI global references: 956

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message