You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@jackrabbit.apache.org by "Maxim Zinal (JIRA)" <ji...@apache.org> on 2013/07/23 15:46:50 UTC
[jira] [Created] (JCR-3627) Threads created by JackrabbitThreadPool
are not terminated after repository shutdown
Maxim Zinal created JCR-3627:
--------------------------------
Summary: Threads created by JackrabbitThreadPool are not terminated after repository shutdown
Key: JCR-3627
URL: https://issues.apache.org/jira/browse/JCR-3627
Project: Jackrabbit Content Repository
Issue Type: Bug
Components: jackrabbit-core
Affects Versions: 2.6.2
Environment: Debian/GNU Linux 7.1 on x86-64
Java(TM) SE Runtime Environment (build 1.7.0_25-b15)
Java HotSpot(TM) 64-Bit Server VM (build 23.25-b01, mixed mode)
Apache Tomcat 7.0.41
Reporter: Maxim Zinal
An application contains embedded JackRabbit repository, configured via custom Spring beans.
After a proper application shutdown (which includes a proper shutdown of JackRabbit repository by calling RepositoryImpl.shutdown() method), Tomcat prints lots of the following messages:
jul 23, 2013 4:55:48 PM org.apache.catalina.loader.WebappClassLoader clearReferencesThreads
SEVERE: The web application [/demoapp] appears to have started a thread named [jackrabbit-pool-23] but has failed to stop it. This is very likely to create a memory leak.
A typical thread dump of those threads looks like this:
sun.misc.Unsafe.park(Native Method)
java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1085)
java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:807)
java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
java.lang.Thread.run(Thread.java:724)
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira