tomcat-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Christopher Schultz <ch...@christopherschultz.net>
Subject Re: Unable to shutdown tomcat
Date Tue, 18 Feb 2014 22:25:40 GMT
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

Tim,

(This looks alot like a question posted recently by "Pooja").

On 2/16/14, 3:05 PM, Tim Leung wrote:
> I did a kill -3, and see these messages written to catalina.out.
> Something definitely doesn't seem right -

[snip]

> "Thread-5" daemon prio=5 tid=7fe82c1f7000 nid=0x10c4bb000 waiting
> for monitor entry [00000000] java.lang.Thread.State: BLOCKED (on
> object monitor)

This thread might be a problem. You'll want to find out where this
gets created. Often, use of the Timer class, etc. can create threads
like this. When using anything that requires threads, I always
recommend setting a thread name (or thread-name prefix) to help
identify why threads have been created.

> "AWT-AppKit" daemon prio=5 tid=7fe82f10d000 nid=0x7fff7a5b3960
> runnable [00000000] java.lang.Thread.State: RUNNABLE

This thread might be a problem. You'll want to make sure that your AWT
thread is launched by Tomcat itself and not by your web application.
Check the documentation for JreMemoryLeakProtectionListener,
specifically the AWT-related options.
(http://tomcat.apache.org/tomcat-7.0-doc/config/listeners.html#JRE_Memory_Leak_Prevention_Listener_-_org.apache.catalina.core.JreMemoryLeakPreventionListener)

> "main" prio=5 tid=7fe82c001800 nid=0x10448e000 runnable
> [10448b000] java.lang.Thread.State: RUNNABLE at
> sun.security.pkcs11.wrapper.PKCS11.C_GetSlotList(Native Method) at
> sun.security.pkcs11.SunPKCS11.<init>(SunPKCS11.java:314) at
> sun.security.pkcs11.SunPKCS11.<init>(SunPKCS11.java:86) at
> sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
> Method) at 
> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
>
> 
at
> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
>
> 
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
> at sun.security.jca.ProviderConfig$4.run(ProviderConfig.java:262) 
> at java.security.AccessController.doPrivileged(Native Method) at
> sun.security.jca.ProviderConfig.doLoadProvider(ProviderConfig.java:244)
>
> 
at sun.security.jca.ProviderConfig.getProvider(ProviderConfig.java:224)
> - locked <7f42b0110> (a sun.misc.Launcher$AppClassLoader) at
> sun.security.jca.ProviderList.loadAll(ProviderList.java:264) at
> sun.security.jca.ProviderList.removeInvalid(ProviderList.java:281) 
> at
> sun.security.jca.Providers.getFullProviderList(Providers.java:129) 
> - locked <7fb0bfef0> (a java.lang.Class for
> sun.security.jca.Providers) at
> java.security.Security.getProviders(Security.java:421) at 
> org.apache.catalina.core.JreMemoryLeakPreventionListener.lifecycleEvent(JreMemoryLeakPreventionListener.java:407)
>
> 
at
> org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
>
> 
at
> org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90)
>
> 
at
> org.apache.catalina.util.LifecycleBase.setStateInternal(LifecycleBase.java:402)
>
> 
- - locked <7f42b6328> (a org.apache.catalina.core.StandardServer)
> at
> org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:99) 
> - locked <7f42b6328> (a org.apache.catalina.core.StandardServer) at
> org.apache.catalina.startup.Catalina.load(Catalina.java:639) at
> org.apache.catalina.startup.Catalina.load(Catalina.java:664) 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:281) 
> at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:455)

The main thread definitely looks like it's doing something a bit odd.
Are you sure you got this thread dump after Tomcat had completely
started up?

The main thread looks to be more likely the issue (stuck on startup?)
but you should look-into those two other threads to make sure they are
handled properly, otherwise you risk memory leaks.

- -chris
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1
Comment: GPGTools - http://gpgtools.org
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/

iQIcBAEBCAAGBQJTA93iAAoJEBzwKT+lPKRYqmMP/AlgiB7QfXsUDGR7UiB+Gvu8
TcZIz2347ZmM9ILYTygLgWNT5CcSt5mL0zRX89YxNIgKoFGgIMx5qLz3YWkXramk
82aO5hxKgeKjAyyhiy+X2HWgzRsDAlQuQN/OAywziyqOGVvA9pyVKe1wGi5HYiUJ
em8KkhlmX+sePIOQtt7EW3Ef3BlGcJExTl7rK2W69FBcC3Gl/DNxO32+qSCd96+3
zu9pT0DaZf64zx/V4n/MkI+pDdkVJdLlcECpvO3hNvjoujNVxRCOGWm9sMbXR284
PQOnP1NBsqmTKbxCO1q5XxIObJwGW/UE2rjLyolb542U2xL0d6BWD0ikJdQObIJp
pOBr14MQrQojL5Zndb513GUkIt9d2n7HL+uj+D2JVA9NYh+fskOOAZJyLBv0tjcv
hQfXDgg0US7E7fta583pXle/togaH4db8mHCEOKWugD33Isx0fYaXge4oGimzvQ3
X/HwLkBTm1FZV5Rp7NhFQq3RZQbrfPKo3jTI4+ovi/kHwKSaDjt+6vYFxlXdrrih
buPBFwFj+UpULGbAL9qQvDdr6lR24yF2d+nhhrqadXZSIw/eDH63EFuVoviX09Y2
mkVQC9kzjpCc3M3KFANR3cuUv8O2S74hP/jJhpK7BC8lQv9KixwT/dyYUrbXxi3y
+xA6vgBQgTz9JKI91Afd
=J4ZZ
-----END PGP SIGNATURE-----

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


Mime
View raw message