You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@sling.apache.org by "Carsten Ziegeler (JIRA)" <ji...@apache.org> on 2017/08/17 12:05:01 UTC

[jira] [Assigned] (SLING-7004) Deadlock at startup in Commons Scheduler

     [ https://issues.apache.org/jira/browse/SLING-7004?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Carsten Ziegeler reassigned SLING-7004:
---------------------------------------

    Assignee: Carsten Ziegeler

> Deadlock at startup in Commons Scheduler
> ----------------------------------------
>
>                 Key: SLING-7004
>                 URL: https://issues.apache.org/jira/browse/SLING-7004
>             Project: Sling
>          Issue Type: Bug
>          Components: Commons
>            Reporter: Chetan Mehrotra
>            Assignee: Carsten Ziegeler
>             Fix For: Commons Scheduler 2.6.4
>
>         Attachments: threaddump.log
>
>
> Saw following deadlock in one of the startups with 2.6.2 release. Logs [attached|^threaddump.log]
> {noformat}
> Found one Java-level deadlock:
> =============================
> "Apache Sling Repository Startup Thread":
>   waiting to lock monitor 0x00007f3eec6eb318 (object 0x00000000e3f944e0, a org.apache.sling.commons.scheduler.impl.SchedulerProxy),
>   which is held by "FelixStartLevel"
> "FelixStartLevel":
>   waiting to lock monitor 0x00007f3e610de918 (object 0x00000000e798fc58, a org.apache.sling.commons.scheduler.impl.SchedulerProxy),
>   which is held by "Apache Sling Repository Startup Thread"
> Java stack information for the threads listed above:
> ===================================================
> "Apache Sling Repository Startup Thread":
> 	at org.apache.sling.commons.scheduler.impl.QuartzScheduler.unschedule(QuartzScheduler.java:555)
> 	- waiting to lock <0x00000000e3f944e0> (a org.apache.sling.commons.scheduler.impl.SchedulerProxy)
> 	at org.apache.sling.commons.scheduler.impl.QuartzScheduler.scheduleJob(QuartzScheduler.java:601)
> 	- locked <0x00000000e798fc58> (a org.apache.sling.commons.scheduler.impl.SchedulerProxy)
> 	at org.apache.sling.commons.scheduler.impl.QuartzScheduler.schedule(QuartzScheduler.java:532)
> 	at org.apache.sling.commons.scheduler.impl.WhiteboardHandler.scheduleJob(WhiteboardHandler.java:271)
> 	at org.apache.sling.commons.scheduler.impl.WhiteboardHandler.trySchedulePeriod(WhiteboardHandler.java:229)
> 	at org.apache.sling.commons.scheduler.impl.WhiteboardHandler.register(WhiteboardHandler.java:189)
> 	at org.apache.sling.commons.scheduler.impl.WhiteboardHandler.registerRunnable(WhiteboardHandler.java:146)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> 	at java.lang.reflect.Method.invoke(Method.java:497)
> 	at org.apache.felix.scr.impl.inject.BaseMethod.invokeMethod(BaseMethod.java:224)
> 	at org.apache.felix.scr.impl.inject.BaseMethod.access$500(BaseMethod.java:39)
> 	at org.apache.felix.scr.impl.inject.BaseMethod$Resolved.invoke(BaseMethod.java:617)
> 	at org.apache.felix.scr.impl.inject.BaseMethod.invoke(BaseMethod.java:501)
> 	at org.apache.felix.scr.impl.inject.BindMethod.invoke(BindMethod.java:655)
> 	at org.apache.felix.scr.impl.manager.DependencyManager.doInvokeBindMethod(DependencyManager.java:1722)
> 	at org.apache.felix.scr.impl.manager.DependencyManager.invokeBindMethod(DependencyManager.java:1699)
> 	at org.apache.felix.scr.impl.manager.SingleComponentManager.invokeBindMethod(SingleComponentManager.java:372)
> 	at org.apache.felix.scr.impl.manager.DependencyManager$MultipleDynamicCustomizer.addedService(DependencyManager.java:320)
> 	at org.apache.felix.scr.impl.manager.DependencyManager$MultipleDynamicCustomizer.addedService(DependencyManager.java:291)
> 	at org.apache.felix.scr.impl.manager.ServiceTracker$Tracked.customizerAdded(ServiceTracker.java:1215)
> 	at org.apache.felix.scr.impl.manager.ServiceTracker$Tracked.customizerAdded(ServiceTracker.java:1136)
> 	at org.apache.felix.scr.impl.manager.ServiceTracker$AbstractTracked.trackAdding(ServiceTracker.java:945)
> 	at org.apache.felix.scr.impl.manager.ServiceTracker$AbstractTracked.track(ServiceTracker.java:881)
> 	at org.apache.felix.scr.impl.manager.ServiceTracker$Tracked.serviceChanged(ServiceTracker.java:1167)
> 	at org.apache.felix.scr.impl.BundleComponentActivator$ListenerInfo.serviceChanged(BundleComponentActivator.java:127)
> 	at org.apache.felix.framework.EventDispatcher.invokeServiceListenerCallback(EventDispatcher.java:990)
> 	at org.apache.felix.framework.EventDispatcher.fireEventImmediately(EventDispatcher.java:838)
> 	at org.apache.felix.framework.EventDispatcher.fireServiceEvent(EventDispatcher.java:545)
> 	at org.apache.felix.framework.Felix.fireServiceEvent(Felix.java:4579)
> 	at org.apache.felix.framework.Felix.registerService(Felix.java:3571)
> 	at org.apache.felix.framework.BundleContextImpl.registerService(BundleContextImpl.java:348)
> 	at org.apache.felix.framework.BundleContextImpl.registerService(BundleContextImpl.java:322)
> 	at org.apache.jackrabbit.oak.osgi.OsgiWhiteboard.register(OsgiWhiteboard.java:80)
> 	at org.apache.jackrabbit.oak.spi.whiteboard.WhiteboardUtils.scheduleWithFixedDelay(WhiteboardUtils.java:71)
> 	at org.apache.jackrabbit.oak.spi.whiteboard.WhiteboardUtils.scheduleWithFixedDelay(WhiteboardUtils.java:52)
> 	at org.apache.jackrabbit.oak.spi.whiteboard.WhiteboardUtils.scheduleWithFixedDelay(WhiteboardUtils.java:46)
> 	at org.apache.jackrabbit.oak.stats.StatisticManager.<init>(StatisticManager.java:74)
> 	at org.apache.jackrabbit.oak.jcr.repository.RepositoryImpl.<init>(RepositoryImpl.java:151)
> 	at org.apache.jackrabbit.oak.jcr.Jcr.createRepository(Jcr.java:407)
> 	at com.adobe.granite.repository.impl.SlingRepositoryManager.createRepository(SlingRepositoryManager.java:417)
> 	at com.adobe.granite.repository.impl.SlingRepositoryManager.acquireRepository(SlingRepositoryManager.java:265)
> 	at org.apache.sling.jcr.base.AbstractSlingRepositoryManager.initializeAndRegisterRepositoryService(AbstractSlingRepositoryManager.java:471)
> 	at org.apache.sling.jcr.base.AbstractSlingRepositoryManager.access$300(AbstractSlingRepositoryManager.java:85)
> 	at org.apache.sling.jcr.base.AbstractSlingRepositoryManager$4.run(AbstractSlingRepositoryManager.java:455)
> "FelixStartLevel":
> 	at org.apache.sling.commons.scheduler.impl.QuartzScheduler.unschedule(QuartzScheduler.java:555)
> 	- waiting to lock <0x00000000e798fc58> (a org.apache.sling.commons.scheduler.impl.SchedulerProxy)
> 	at org.apache.sling.commons.scheduler.impl.QuartzScheduler.scheduleJob(QuartzScheduler.java:601)
> 	- locked <0x00000000e3f944e0> (a org.apache.sling.commons.scheduler.impl.SchedulerProxy)
> 	at org.apache.sling.commons.scheduler.impl.QuartzScheduler.schedule(QuartzScheduler.java:532)
> 	at org.apache.sling.commons.scheduler.impl.WhiteboardHandler.scheduleJob(WhiteboardHandler.java:271)
> 	at org.apache.sling.commons.scheduler.impl.WhiteboardHandler.trySchedulePeriod(WhiteboardHandler.java:229)
> 	at org.apache.sling.commons.scheduler.impl.WhiteboardHandler.register(WhiteboardHandler.java:189)
> 	at org.apache.sling.commons.scheduler.impl.WhiteboardHandler.registerRunnable(WhiteboardHandler.java:146)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> 	at java.lang.reflect.Method.invoke(Method.java:497)
> 	at org.apache.felix.scr.impl.inject.BaseMethod.invokeMethod(BaseMethod.java:224)
> 	at org.apache.felix.scr.impl.inject.BaseMethod.access$500(BaseMethod.java:39)
> 	at org.apache.felix.scr.impl.inject.BaseMethod$Resolved.invoke(BaseMethod.java:617)
> 	at org.apache.felix.scr.impl.inject.BaseMethod.invoke(BaseMethod.java:501)
> 	at org.apache.felix.scr.impl.inject.BindMethod.invoke(BindMethod.java:655)
> 	at org.apache.felix.scr.impl.manager.DependencyManager.doInvokeBindMethod(DependencyManager.java:1722)
> 	at org.apache.felix.scr.impl.manager.DependencyManager.open(DependencyManager.java:1556)
> 	at org.apache.felix.scr.impl.manager.SingleComponentManager.createImplementationObject(SingleComponentManager.java:261)
> 	at org.apache.felix.scr.impl.manager.SingleComponentManager.createComponent(SingleComponentManager.java:109)
> 	at org.apache.felix.scr.impl.manager.SingleComponentManager.getService(SingleComponentManager.java:906)
> 	at org.apache.felix.scr.impl.manager.SingleComponentManager.getServiceInternal(SingleComponentManager.java:879)
> 	at org.apache.felix.scr.impl.manager.AbstractComponentManager.activateInternal(AbstractComponentManager.java:749)
> 	at org.apache.felix.scr.impl.manager.AbstractComponentManager.enableInternal(AbstractComponentManager.java:675)
> 	at org.apache.felix.scr.impl.manager.AbstractComponentManager.enable(AbstractComponentManager.java:430)
> 	at org.apache.felix.scr.impl.manager.ConfigurableComponentHolder.enableComponents(ConfigurableComponentHolder.java:657)
> 	- locked <0x00000000e3dbc5d0> (a java.lang.Object)
> 	at org.apache.felix.scr.impl.BundleComponentActivator.initialEnable(BundleComponentActivator.java:341)
> 	at org.apache.felix.scr.impl.Activator.loadComponents(Activator.java:390)
> 	at org.apache.felix.scr.impl.Activator.access$200(Activator.java:54)
> 	at org.apache.felix.scr.impl.Activator$ScrExtension.start(Activator.java:265)
> 	at org.apache.felix.utils.extender.AbstractExtender.createExtension(AbstractExtender.java:259)
> 	at org.apache.felix.utils.extender.AbstractExtender.modifiedBundle(AbstractExtender.java:232)
> 	at org.osgi.util.tracker.BundleTracker$Tracked.customizerModified(BundleTracker.java:482)
> 	at org.osgi.util.tracker.BundleTracker$Tracked.customizerModified(BundleTracker.java:415)
> 	at org.osgi.util.tracker.AbstractTracked.track(AbstractTracked.java:232)
> 	at org.osgi.util.tracker.BundleTracker$Tracked.bundleChanged(BundleTracker.java:444)
> 	at org.apache.felix.framework.EventDispatcher.invokeBundleListenerCallback(EventDispatcher.java:915)
> 	at org.apache.felix.framework.EventDispatcher.fireEventImmediately(EventDispatcher.java:834)
> 	at org.apache.felix.framework.EventDispatcher.fireBundleEvent(EventDispatcher.java:516)
> 	at org.apache.felix.framework.Felix.fireBundleEvent(Felix.java:4563)
> 	at org.apache.felix.framework.Felix.startBundle(Felix.java:2173)
> 	at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1372)
> 	at org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:308)
> 	at java.lang.Thread.run(Thread.java:745)
> Found 1 deadlock.
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)