[ 
https://issues.apache.org/jira/browse/FELIX-4670?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14172832#comment-14172832
 ] 

David Bosschaert commented on FELIX-4670:
-----------------------------------------

I thought a little more about doing a get() call before doing the init() but I 
think there is an issue with that. Basically there is a window of opportunity 
where a servlet is removed between that get() call and the putIfAbsent() which 
means that a servlet/filter may not get added even though the alias/servlet (or 
filter) isn't there.

Therefore I think it might be better to not do the additional get() and simply 
do the atomic putIfAbsent(). I'll put some code in that makes sure that init() 
doesn't get called multiple times without destroy in between.

> Deadlock in Felix HTTP service
> ------------------------------
>
>                 Key: FELIX-4670
>                 URL: https://issues.apache.org/jira/browse/FELIX-4670
>             Project: Felix
>          Issue Type: Bug
>          Components: HTTP Service
>    Affects Versions: http-2.2.0
>         Environment: Websphere 7.0, IBM Java 6.0
>            Reporter: Jörg Hoh
>            Assignee: David Bosschaert
>         Attachments: felix-4670.diff, felix_4670_alt.diff
>
>
> When we startup our webapplication, we sometimes run into a deadlock:
> {code}
> 1LKDEADLOCK    Deadlock detected !!!
> NULL           ---------------------
> NULL           
> 2LKDEADLOCKTHR  Thread "server.startup : 1" (0x0000000001DDC800)
> 3LKDEADLOCKWTR    is waiting for:
> 4LKDEADLOCKMON      sys_mon_t:0x00007FFFBBB61F20 infl_mon_t: 
> 0x00007FFFBBB61F90:
> 4LKDEADLOCKOBJ      
> org/apache/felix/http/whiteboard/internal/manager/ExtenderManager@0x00000001014B3650/0x00000001014B365C:
>  
> 3LKDEADLOCKOWN    which is owned by:
> 2LKDEADLOCKTHR  Thread "FelixStartLevel" (0x0000000002156100)
> 3LKDEADLOCKWTR    which is waiting for:
> 4LKDEADLOCKMON      sys_mon_t:0x00007FFFBBBBA340 infl_mon_t: 
> 0x00007FFFBBBBA3B0:
> 4LKDEADLOCKOBJ      
> org/apache/felix/http/base/internal/handler/HandlerRegistry@0x00000001070D6EA0/0x00000001070D6EAC:
>  
> 3LKDEADLOCKOWN    which is owned by:
> 2LKDEADLOCKTHR  Thread "server.startup : 1" (0x0000000001DDC800)
> NULL         
> {code}
> The stacktrace of these 2 threads as indicated by the javacore file:
> {code}
> 3XMTHREADINFO      "FelixStartLevel" J9VMThread:0x0000000002156100, 
> j9thread_t:0x00007FFFC938B4B0, java/lang/Thread:0x0000000101580260, state:B, 
> prio=5
> 3XMJAVALTHREAD            (java/lang/Thread getId:0x70, isDaemon:true)
> 3XMTHREADINFO1            (native thread ID:0x5D3A, native priority:0x5, 
> native policy:UNKNOWN)
> 3XMTHREADINFO2            (native stack address range 
> from:0x00007FFFC530A000, to:0x00007FFFC534B000, size:0x41000)
> 3XMTHREADINFO3           Java callstack:
> 4XESTACKTRACE                at 
> org/apache/felix/http/base/internal/service/HttpServiceImpl.unregisterFilter(HttpServiceImpl.java:140)
>     
> 4XESTACKTRACE                at 
> org/apache/felix/http/base/internal/service/HttpServiceImpl.unregisterFilter(HttpServiceImpl.java:76)
> 4XESTACKTRACE                at 
> org/apache/felix/http/whiteboard/internal/manager/FilterMapping.unregister(FilterMapping.java:90)
> 4XESTACKTRACE                at 
> org/apache/felix/http/whiteboard/internal/manager/FilterMapping.unregister(FilterMapping.java:83)
> 4XESTACKTRACE                at 
> org/apache/felix/http/whiteboard/internal/manager/ExtenderManager.unregisterMapping(ExtenderManager.java:270)
> 4XESTACKTRACE                at 
> org/apache/felix/http/whiteboard/internal/manager/ExtenderManager.removeMapping(ExtenderManager.java:252)
>       
> 4XESTACKTRACE                at 
> org/apache/felix/http/whiteboard/internal/manager/ExtenderManager.remove(ExtenderManager.java:183)
> 4XESTACKTRACE                at 
> org/apache/felix/http/whiteboard/internal/tracker/FilterTracker.removed(FilterTracker.java:48)
> 4XESTACKTRACE                at 
> org/apache/felix/http/whiteboard/internal/tracker/FilterTracker.removed(FilterTracker.java:24)
> 4XESTACKTRACE                at 
> org/apache/felix/http/whiteboard/internal/tracker/AbstractTracker.removedService(AbstractTracker.java:52)
> 4XESTACKTRACE                at 
> org/osgi/util/tracker/ServiceTracker$Tracked.customizerRemoved(ServiceTracker.java:956)
> 4XESTACKTRACE                at 
> org/osgi/util/tracker/ServiceTracker$Tracked.customizerRemoved(ServiceTracker.java:864)
> 4XESTACKTRACE                at 
> org/osgi/util/tracker/AbstractTracked.untrack(AbstractTracked.java:341(Compiled
>  Code))
> 4XESTACKTRACE                at 
> org/osgi/util/tracker/ServiceTracker$Tracked.serviceChanged(ServiceTracker.java:902(Compiled
>  Code))
> 4XESTACKTRACE                at 
> org/apache/felix/framework/util/EventDispatcher.invokeServiceListenerCallback(EventDispatcher.java:932(Compiled
>  Code))
> 4XESTACKTRACE                at 
> org/apache/felix/framework/util/EventDispatcher.fireEventImmediately(EventDispatcher.java:793(Compiled
>  Code))
> 4XESTACKTRACE                at 
> org/apache/felix/framework/util/EventDispatcher.fireServiceEvent(EventDispatcher.java:543(Compiled
>  Code))
> 4XESTACKTRACE                at 
> org/apache/felix/framework/Felix.fireServiceEvent(Felix.java:4401(Compiled 
> Code))
> 4XESTACKTRACE                at 
> org/apache/felix/framework/Felix.access$000(Felix.java:74(Compiled Code))
> 4XESTACKTRACE                at 
> org/apache/felix/framework/Felix$1.serviceChanged(Felix.java:390(Compiled 
> Code))
> 4XESTACKTRACE                at 
> org/apache/felix/framework/ServiceRegistry.unregisterService(ServiceRegistry.java:151(Compiled
>  Code))
> 4XESTACKTRACE                at 
> org/apache/felix/framework/ServiceRegistrationImpl.unregister(ServiceRegistrationImpl.java:127(Compiled
>  Code))
> 4XESTACKTRACE                at 
> org/apache/felix/scr/impl/manager/AbstractComponentManager.unregisterComponentService(AbstractComponentManager.java:702(Compiled
>  Code))
> 4XESTACKTRACE                at 
> org/apache/felix/scr/impl/manager/AbstractComponentManager$State.doDeactivate(AbstractComponentManager.java:1301(Compiled
>  Code))
> 4XESTACKTRACE                at 
> org/apache/felix/scr/impl/manager/AbstractComponentManager$Satisfied.dispose(AbstractComponentManager.java:1617)
> 4XESTACKTRACE                at 
> org/apache/felix/scr/impl/manager/AbstractComponentManager.disposeInternal(AbstractComponentManager.java:574(Compiled
>  Code))
> 4XESTACKTRACE                at 
> org/apache/felix/scr/impl/manager/AbstractComponentManager.dispose(AbstractComponentManager.java:404(Compiled
>  Code))
> 4XESTACKTRACE                at 
> org/apache/felix/scr/impl/config/ImmediateComponentHolder.disposeComponents(ImmediateComponentHolder.java:371(Compiled
>  Code))
> 4XESTACKTRACE                at 
> org/apache/felix/scr/impl/BundleComponentActivator.dispose(BundleComponentActivator.java:320(Compiled
>  Code))
> 4XESTACKTRACE                at 
> org/apache/felix/scr/impl/Activator.disposeComponents(Activator.java:316)
> 4XESTACKTRACE                at 
> org/apache/felix/scr/impl/Activator.bundleChanged(Activator.java:183(Compiled 
> Code))
> 4XESTACKTRACE                at 
> org/apache/felix/framework/util/EventDispatcher.invokeBundleListenerCallback(EventDispatcher.java:868(Compiled
>  Code))
> 4XESTACKTRACE                at 
> org/apache/felix/framework/util/EventDispatcher.fireEventImmediately(EventDispatcher.java:789(Compiled
>  Code))
> 4XESTACKTRACE                at 
> org/apache/felix/framework/util/EventDispatcher.fireBundleEvent(EventDispatcher.java:514(Compiled
>  Code))
> 4XESTACKTRACE                at 
> org/apache/felix/framework/Felix.fireBundleEvent(Felix.java:4385(Compiled 
> Code))
> 4XESTACKTRACE                at 
> org/apache/felix/framework/Felix.stopBundle(Felix.java:2508)
> 4XESTACKTRACE                at 
> org/apache/felix/framework/Felix.setActiveStartLevel(Felix.java:1297(Compiled 
> Code))
> 4XESTACKTRACE                at 
> org/apache/felix/framework/FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:304)
> 4XESTACKTRACE                at java/lang/Thread.run(Thread.java:761)
> {code}
> {code}
> 3XMTHREADINFO      "server.startup : 1" J9VMThread:0x0000000001DDC800, 
> j9thread_t:0x00007FFFC8C61340, java/lang/Thread:0x00000001014B35A8, state:B, 
> prio=5
> 3XMJAVALTHREAD            (java/lang/Thread getId:0x68, isDaemon:true)
> 3XMTHREADINFO1            (native thread ID:0x5A08, native priority:0x5, 
> native policy:UNKNOWN)
> 3XMTHREADINFO2            (native stack address range 
> from:0x00007FFFC64D4000, to:0x00007FFFC6515000, size:0x41000)
> 3XMTHREADINFO3           Java callstack:
> 4XESTACKTRACE                at 
> org/apache/felix/http/whiteboard/internal/manager/ExtenderManager.remove(ExtenderManager.java:183)
> 4XESTACKTRACE                at 
> org/apache/felix/http/whiteboard/internal/tracker/ServletTracker.removed(ServletTracker.java:48)
> 4XESTACKTRACE                at 
> org/apache/felix/http/whiteboard/internal/tracker/ServletTracker.removed(ServletTracker.java:24)
> 4XESTACKTRACE                at 
> org/apache/felix/http/whiteboard/internal/tracker/AbstractTracker.removedService(AbstractTracker.java:52)
> 4XESTACKTRACE                at 
> org/osgi/util/tracker/ServiceTracker$Tracked.customizerRemoved(ServiceTracker.java:956)
> 4XESTACKTRACE                at 
> org/osgi/util/tracker/ServiceTracker$Tracked.customizerRemoved(ServiceTracker.java:864)
> 4XESTACKTRACE                at 
> org/osgi/util/tracker/AbstractTracked.untrack(AbstractTracked.java:341(Compiled
>  Code))
> 4XESTACKTRACE                at 
> org/osgi/util/tracker/ServiceTracker$Tracked.serviceChanged(ServiceTracker.java:902(Compiled
>  Code))
> 4XESTACKTRACE                at 
> org/apache/felix/framework/util/EventDispatcher.invokeServiceLi       
> stenerCallback(EventDispatcher.java:932(Compiled Code))
> 4XESTACKTRACE                at 
> org/apache/felix/framework/util/EventDispatcher.fireEventImmediately(EventDispatcher.java:793(Compiled
>  Code))
> 4XESTACKTRACE                at 
> org/apache/felix/framework/util/EventDispatcher.fireServiceEvent(EventDispatcher.java:543(Compiled
>  Code))
> 4XESTACKTRACE                at 
> org/apache/felix/framework/Felix.fireServiceEvent(Felix.java:4401(Compiled 
> Code))
> 4XESTACKTRACE                at 
> org/apache/felix/framework/Felix.access$000(Felix.java:74(Compiled Code))
> 4XESTACKTRACE                at 
> org/apache/felix/framework/Felix$1.serviceChanged(Felix.java:390(Compiled 
> Code))
> 4XESTACKTRACE                at 
> org/apache/felix/framework/ServiceRegistry.unregisterService(ServiceRegistry.java:151(Compiled
>  Code))
> 4XESTACKTRACE                at 
> org/apache/felix/framework/ServiceRegistrationImpl.unregister(ServiceRegistrationImpl.java:127(Compiled
>  Code))
> 4XESTACKTRACE                at 
> org/apache/felix/inventory/impl/InventoryPrinterAdapter.unregisterConsole(InventoryPrinterAdapter.java:84)
> 4XESTACKTRACE                at 
> org/apache/felix/inventory/impl/InventoryPrinterManagerImpl.addService(InventoryPrinterManagerImpl.java:196)
> 4XESTACKTRACE                at 
> org/apache/felix/inventory/impl/InventoryPrinterManagerImpl.addingService(InventoryPrinterManagerImpl.java:128)
> 4XESTACKTRACE                at 
> org/osgi/util/tracker/ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:932(Compiled
>  Code))
> 4XESTACKTRACE                at 
> org/osgi/util/tracker/ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:864(Compiled
>  Code))
> 4XESTACKTRACE                at 
> org/osgi/util/tracker/AbstractTracked.trackAdding(AbstractTracked.java:256(Compiled
>  Code))
> 4XESTACKTRACE                at 
> org/osgi/util/tracker/AbstractTracked.track(AbstractTracked.java:229(Compiled 
> Code))
> 4XESTACKTRACE                at 
> org/osgi/util/tracker/ServiceTracker$Tracked.serviceChanged(ServiceTracker.java:894(Compiled
>  Code))
> 4XESTACKTRACE                at 
> org/apache/felix/framework/util/EventDispatcher.invokeServiceListenerCallback(EventDispatcher.java:932(Compiled
>  Code))
> 4XESTACKTRACE                at 
> org/apache/felix/framework/util/EventDispatcher.fireEventImmediately(EventDispatcher.java:793(Compiled
>  Code))
> 4XESTACKTRACE                at 
> org/apache/felix/framework/util/EventDispatcher.fireServiceEvent(EventDispatcher.java:543(Compiled
>  Code))
> 4XESTACKTRACE                at 
> org/apache/felix/framework/Felix.fireServiceEvent(Felix.java:4401(Compiled 
> Code))
> 4XESTACKTRACE                at 
> org/apache/felix/framework/Felix.registerService(Felix.java:3411(Compiled 
> Code))
> 4XESTACKTRACE                at 
> org/apache/felix/framework/BundleContextImpl.registerService(BundleContextImpl.java:346(Compiled
>  Code))
> 4XESTACKTRACE                at 
> org/apache/felix/framework/BundleContextImpl.registerService(BundleContextImpl.java:320)
> 4XESTACKTRACE                at 
> org/apache/felix/inventory/impl/webconsole/WebConsoleAdapter.add(WebConsoleAdapter.java:125)
> 4XESTACKTRACE                at 
> org/apache/felix/inventory/impl/webconsole/WebConsoleAdapter.addingService(WebConsoleAdapter.java:155)
> 4XESTACKTRACE                at 
> org/osgi/util/tracker/ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:932(Compiled
>  Code))
> 4XESTACKTRACE                at 
> org/osgi/util/tracker/ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:864(Compiled
>  Code))
> 4XESTACKTRACE                at 
> org/osgi/util/tracker/AbstractTracked.trackAdding(AbstractTracked.java:256(Compiled
>  Code))
> 4XESTACKTRACE                at 
> org/osgi/util/tracker/AbstractTracked.track(AbstractTracked.java:229(Compiled 
> Code))
> 4XESTACKTRACE                at 
> org/osgi/util/tracker/ServiceTracker$Tracked.serviceChanged(ServiceTracker.java:894(Compiled
>  Code))
> 4XESTACKTRACE                at 
> org/apache/felix/framework/util/EventDispatcher.invokeServiceListenerCallback(EventDispatcher.java:932(Compiled
>  Code))
> 4XESTACKTRACE                at 
> org/apache/felix/framework/util/EventDispatcher.fireEventImmediately(EventDispatcher.java:793(Compiled
>  Code))
> 4XESTACKTRACE                at 
> org/apache/felix/framework/util/EventDispatcher.fireServiceEvent(EventDispatcher.java:543(Compiled
>  Code))
> 4XESTACKTRACE                at 
> org/apache/felix/framework/Felix.fireServiceEvent(Felix.java:4401(Compiled 
> Code))
> 4XESTACKTRACE                at 
> org/apache/felix/framework/Felix.registerService(Felix.java:3411(Compiled 
> Code))
> 4XESTACKTRACE                at 
> org/apache/felix/framework/BundleContextImpl.registerService(BundleContextImpl.java:346(Compiled
>  Code))
> 4XESTACKTRACE                at 
> org/apache/felix/framework/BundleContextImpl.registerService(BundleContextImpl.java:320)
> 4XESTACKTRACE                at 
> de/xxx/yyy/modules/common/servlet/dispatcher/jsp/JspTldLocationsCache.<init>(JspTldLocationsCache.java:81)
> 4XESTACKTRACE                at 
> de/xxx/yyy/modules/common/servlet/dispatcher/jsp/engine/JspScriptEngineFactory.activate(JspScriptEngineFactory.java:235)
> 4XESTACKTRACE                at 
> de/xxx/yyy/modules/common/servlet/ContainerServlet.init(ContainerServlet.java:96)
> 4XESTACKTRACE                at 
> org/apache/felix/http/base/internal/handler/ServletHandler.init(ServletHandler.java:55)
> 4XESTACKTRACE                at 
> org/apache/felix/http/base/internal/handler/HandlerRegistry.addServlet(HandlerRegistry.java:65)
>                      
> 4XESTACKTRACE                at 
> org/apache/felix/http/base/internal/service/HttpServiceImpl.registerServlet(HttpServiceImpl.java:95)
> 4XESTACKTRACE                at 
> de/xxx/yyy/modules/common/osgi/webapp/WebappModuleServiceTracker.addingService(WebappModuleServiceTracker.java:82)
> 4XESTACKTRACE                at 
> org/osgi/util/tracker/ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:932(Compiled
>  Code))
> 4XESTACKTRACE                at 
> org/osgi/util/tracker/ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:864(Compiled
>  Code))
> 4XESTACKTRACE                at 
> org/osgi/util/tracker/AbstractTracked.trackAdding(AbstractTracked.java:256(Compiled
>  Code))
> 4XESTACKTRACE                at 
> org/osgi/util/tracker/AbstractTracked.track(AbstractTracked.java:229(Compiled 
> Code))
> 4XESTACKTRACE                at 
> org/osgi/util/tracker/ServiceTracker$Tracked.serviceChanged(ServiceTracker.java:894(Compiled
>  Code))
> 4XESTACKTRACE                at 
> org/apache/felix/framework/util/EventDispatcher.invokeServiceListenerCallback(EventDispatcher.java:932(Compiled
>  Code))
> 4XESTACKTRACE                at 
> org/apache/felix/framework/util/EventDispatcher.fireEventImmediately(EventDispatcher.java:793(Compiled
>  Code))
> 4XESTACKTRACE                at 
> org/apache/felix/framework/util/EventDispatcher.fireServiceEvent(EventDispatcher.java:543(Compiled
>  Code))
> 4XESTACKTRACE                at 
> org/apache/felix/framework/Felix.fireServiceEvent(Felix.java:4401(Compiled 
> Code))
> 4XESTACKTRACE                at 
> org/apache/felix/framework/Felix.registerService(Felix.java:3411(Compiled 
> Code))
> 4XESTACKTRACE                at 
> org/apache/felix/framework/BundleContextImpl.registerService(BundleContextImpl.java:346(Compiled
>  Code))
> 4XESTACKTRACE                at 
> org/apache/felix/http/base/internal/HttpServiceController.register(HttpServiceController.java:135)
> 4XESTACKTRACE                at 
> org/apache/felix/http/base/internal/DispatcherServlet.init(DispatcherServlet.java:48)
> 4XESTACKTRACE                at 
> org/apache/felix/http/proxy/DispatcherTracker.initDispatcher(DispatcherTracker.java:97)
> 4XESTACKTRACE                at 
> org/apache/felix/http/proxy/DispatcherTracker.setDispatcher(DispatcherTracker.java:77)
> 4XESTACKTRACE                at 
> org/apache/felix/http/proxy/DispatcherTracker.addingService(DispatcherTracker.java:52)
> 4XESTACKTRACE                at 
> org/osgi/util/tracker/ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:932)
> 4XESTACKTRACE                at 
> org/osgi/util/tracker/ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:864)
> 4XESTACKTRACE                at 
> org/osgi/util/tracker/AbstractTracked.trackAdding(AbstractTracked.java:256(Compiled
>  Code))
> 4XESTACKTRACE                at 
> org/osgi/util/tracker/AbstractTracked.trackInitial(AbstractTracked.java:183(Compiled
>  Code))
> 4XESTACKTRACE                at 
> org/osgi/util/tracker/ServiceTracker.open(ServiceTracker.java:317)
> 4XESTACKTRACE                at 
> org/osgi/util/tracker/ServiceTracker.open(ServiceTracker.java:261)
> 4XESTACKTRACE                at 
> org/apache/felix/http/proxy/ProxyServlet.doInit(ProxyServlet.java:51)
> 4XESTACKTRACE                at 
> org/apache/felix/http/proxy/ProxyServlet.init(ProxyServlet.java:39)
> 4XESTACKTRACE                at 
> org/apache/sling/launchpad/base/webapp/SlingServletDelegate.init(SlingServletDelegate.java:208)
> 4XESTACKTRACE                at 
> javax/servlet/GenericServlet.init(GenericServlet.java:241)
> 4XESTACKTRACE                at 
> org/apache/sling/launchpad/webapp/SlingServlet.startSling(SlingServlet.java:384)
> 4XESTACKTRACE                at 
> org/apache/sling/launchpad/webapp/SlingServlet.startSling(SlingServlet.java:325)
> 4XESTACKTRACE                at 
> org/apache/sling/launchpad/webapp/SlingServlet.init(SlingServlet.java:118)
> 4XESTACKTRACE                at 
> javax/servlet/GenericServlet.init(GenericServlet.java:241)
> 4XESTACKTRACE                at 
> com/ibm/ws/webcontainer/servlet/ServletWrapper.init(ServletWrapper.java:363)
> 4XESTACKTRACE                at 
> com/ibm/ws/webcontainer/servlet/ServletWrapperImpl.init(ServletWrapperImpl.java:171)
> 4XESTACKTRACE                at 
> com/ibm/ws/webcontainer/servlet/ServletWrapper.initialize(ServletWrapper.java:1844)
> 4XESTACKTRACE                at 
> com/ibm/wsspi/webcontainer/extension/WebExtensionProcessor.createServletWrapper(WebExtensionProcessor.java:98)
> 4XESTACKTRACE                at 
> com/ibm/ws/webcontainer/webapp/WebApp.getServletWrapper(WebApp.java:1048(Compiled
>  Code))
> 4XESTACKTRACE                at 
> com/ibm/ws/webcontainer/webapp/WebApp.getServletWrapper(WebApp.java:969)
> 4XESTACKTRACE                at 
> com/ibm/ws/webcontainer/webapp/WebApp.initializeTargetMappings(WebApp.java:648(Compiled
>  Code))
> 4XESTACKTRACE                at 
> com/ibm/ws/webcontainer/webapp/WebApp.commonInitializationFinally(WebApp.java:450)
> 4XESTACKTRACE                at 
> com/ibm/ws/webcontainer/webapp/WebAppImpl.initialize(WebAppImpl.java:304(Compiled
>  Code))
> 4XESTACKTRACE                at 
> com/ibm/ws/webcontainer/webapp/WebGroupImpl.addWebApplication(WebGroupImpl.java:100)
> 4XESTACKTRACE                at 
> com/ibm/ws/webcontainer/VirtualHostImpl.addWebApplication(VirtualHostImpl.java:166)
> 4XESTACKTRACE                at 
> com/ibm/ws/webcontainer/WSWebContainer.addWebApp(WSWebContainer.java:732)
> 4XESTACKTRACE                at 
> com/ibm/ws/webcontainer/WSWebContainer.addWebApplication(WSWebContainer.java:617)
> 4XESTACKTRACE                at 
> com/ibm/ws/webcontainer/component/WebContainerImpl.install(WebContainerImpl.java:376)
> 4XESTACKTRACE                at 
> com/ibm/ws/webcontainer/component/WebContainerImpl.start(WebContainerImpl.java:668)
> 4XESTACKTRACE                at 
> com/ibm/ws/runtime/component/ApplicationMgrImpl.start(ApplicationMgrImpl.java:1128(Compiled
>  Code))
> 4XESTACKTRACE                at 
> com/ibm/ws/runtime/component/DeployedApplicationImpl.fireDeployedObjectStart(DeployedApplicationImpl.java:1319)
> 4XESTACKTRACE                at 
> com/ibm/ws/runtime/component/DeployedModuleImpl.start(DeployedModuleImpl.java:611(Compiled
>  Code))
> 4XESTACKTRACE                at 
> com/ibm/ws/runtime/component/DeployedApplicationImpl.start(DeployedApplicationImpl.java:944(Compiled
>  Code))
> 4XESTACKTRACE                at 
> com/ibm/ws/runtime/component/ApplicationMgrImpl.startApplication(ApplicationMgrImpl.java:741(Compiled
>  Code))
> 4XESTACKTRACE                at 
> com/ibm/ws/runtime/component/ApplicationMgrImpl$3.run(ApplicationMgrImpl.java:2056)
> 4XESTACKTRACE                at 
> com/ibm/ws/security/auth/ContextManagerImpl.runAs(ContextManagerImpl.java:5395)
> 4XESTACKTRACE                at 
> com/ibm/ws/security/auth/ContextManagerImpl.runAsSystem(ContextManagerImpl.java:5483)
> 4XESTACKTRACE                at 
> com/ibm/ws/security/core/SecurityContext.runAsSystem(SecurityContext.java:255)
> 4XESTACKTRACE                at 
> com/ibm/ws/runtime/component/ApplicationMgrImpl.start(ApplicationMgrImpl.java:2061)
> 4XESTACKTRACE                at 
> com/ibm/ws/runtime/component/CompositionUnitMgrImpl.start(CompositionUnitMgrImpl.java:389(Compiled
>  Code))
> 4XESTACKTRACE                at 
> com/ibm/ws/runtime/component/CompositionUnitImpl.start(CompositionUnitImpl.java:123)
> 4XESTACKTRACE                at 
> com/ibm/ws/runtime/component/CompositionUnitMgrImpl.start(CompositionUnitMgrImpl.java:332)
> 4XESTACKTRACE                at 
> com/ibm/ws/runtime/component/CompositionUnitMgrImpl.access$300(CompositionUnitMgrImpl.java:117)
> 4XESTACKTRACE                at 
> com/ibm/ws/runtime/component/CompositionUnitMgrImpl$CUInitializer.run(CompositionUnitMgrImpl.java:899)
> 4XESTACKTRACE                at 
> com/ibm/wsspi/runtime/component/WsComponentImpl$_AsynchInitializer.run(WsComponentImpl.java:496)
> 4XESTACKTRACE                at 
> com/ibm/ws/util/ThreadPool$Worker.run(ThreadPool.java:1656(Compiled Code))
> {code}
> We run into this quite often, so it's kind of reproducible. We have the same 
> behaviour as well with other thread combinations (e.g. Sling Notifier and 
> FelixFrameworkWiring) hitting the same locks.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to