Do you mean because the thread that is deadlocked is the
QuartzSchedulerThread?

The classloader and the concurrent thread are both waiting on Quartz.
Quartz thread is defined below:  (Other than that I do not know what you
mean when you say it is not consistent.)  Should I provide the full dump in
a ticket?

"Event Manager Thread_QuartzSchedulerThread":
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:769)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at
org.apache.catalina.loader.WebappClassLoaderBase.findClassInternal(WebappClassLoaderBase.java:2283)
- locked <0x00001000bbc1dd20> (a java.lang.Object)
at
org.apache.catalina.loader.WebappClassLoaderBase.findClass(WebappClassLoaderBase.java:811)
at
org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1260)
- locked <0x00001000bbc1dd20> (a java.lang.Object)
at
org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1119)
at
org.quartz.simpl.LoadingLoaderClassLoadHelper.loadClass(LoadingLoaderClassLoadHelper.java:59)
at
org.quartz.simpl.CascadingClassLoadHelper.loadClass(CascadingClassLoadHelper.java:99)
at
org.quartz.simpl.CascadingClassLoadHelper.loadClass(CascadingClassLoadHelper.java:138)
at
org.quartz.impl.jdbcjobstore.StdJDBCDelegate.selectJobDetail(StdJDBCDelegate.java:852)
at
org.quartz.impl.jdbcjobstore.JobStoreSupport.retrieveJob(JobStoreSupport.java:1385)
at
org.quartz.impl.jdbcjobstore.JobStoreSupport.acquireNextTrigger(JobStoreSupport.java:2818)
at
org.quartz.impl.jdbcjobstore.JobStoreSupport$40.execute(JobStoreSupport.java:2759)
at
org.quartz.impl.jdbcjobstore.JobStoreSupport$40.execute(JobStoreSupport.java:2757)
at
org.quartz.impl.jdbcjobstore.JobStoreSupport.executeInNonManagedTXLock(JobStoreSupport.java:3799)
at
org.quartz.impl.jdbcjobstore.JobStoreSupport.acquireNextTriggers(JobStoreSupport.java:2756)
at org.quartz.core.QuartzSchedulerThread.run(QuartzSchedulerThread.java:272)

On Tue, Nov 20, 2018 at 3:20 PM Mark Thomas <ma...@apache.org> wrote:

> The thread dump you posted doesn't seem to be consistent with the
> summary you provide below. Specifically for the "Event Manager
> Thread_QuartzSchedulerThread". Might there be multiple threads with that
> name and we are looking at the wrong one?
>
> Mark
>
>
> On 20/11/2018 19:06, Andrew Carr wrote:
> > My apologies, that is the offending thread, see below: (Should I open a
> > ticket to attach full dumps?)
> >
> > Found one Java-level deadlock:
> > =============================
> > "Thread-96":
> >    waiting to lock monitor 0x3a0d6938 (object 0x80048462700, a
> > java.util.concurrent.ConcurrentHashMap),
> >    which is held by "Thread-29"
> > "Thread-29":
> >    waiting to lock monitor 0x3a0d58b0 (object 0x1000bbc1dd20, a
> > java.lang.Object),
> >    which is held by "Event Manager Thread_QuartzSchedulerThread"
> > "Event Manager Thread_QuartzSchedulerThread":
> >    waiting to lock monitor 0x3803a2c0 (object 0x800674b7830, a
> > org.apache.catalina.loader.ParallelWebappClassLoader),
> >    which is held by "Thread-29"
> >
> >
> > On Tue, Nov 20, 2018 at 12:50 PM Mark Thomas <ma...@apache.org> wrote:
> >
> >> On 20/11/2018 15:21, Andrew Carr wrote:
> >>> Hello,
> >>>
> >>> We have been seeing some intermittent issues with the parallel
> >>> classloader.  I do not want to jump to any conclusions and say this is
> a
> >>> bug w/ the classloader, but we are getting deadlocked threads, pretty
> >>> randomly, when launching the server.  I was wondering if anyone had
> >>> experienced this issue or if you could review the attached thread dump
> >> and
> >>> give me some feedback.
> >>>
> >>> There is no associated log file for the time the deadlock was
> occurring,
> >> I
> >>> am working on getting that.  In unrelated log files I saw some
> >> concurrency
> >>> exceptions, non-thread safe access to lists basically.  I believe that
> >>> issue has been corrected in the source code, and I am not sure the
> >>> concurrency exception has anything to do with the deadlock occurring
> >> during
> >>> classloading.
> >>>
> >>> Personally I am of the belief that unsafe maps / lists could possibly
> >> cause
> >>> the classloader to deadlock.
> >>>
> >>> I can put the full dumps in a ticket, I just hate to open another
> >>> classloader ticket.
> >>
> >> I don't see a deadlock in the provided stack trace.
> >>
> >> Mark
> >>
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
> >> For additional commands, e-mail: dev-h...@tomcat.apache.org
> >>
> >>
> >
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
> For additional commands, e-mail: dev-h...@tomcat.apache.org
>
>

-- 
With Regards,
Andrew Carr

e. andrewlanec...@gmail.com
w. andrew.c...@openlogic.com
c. 4239489206
a. P.O. Box 1231, Greeneville, TN, 37744

Reply via email to