You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@servicemix.apache.org by "lorenzo (JIRA)" <ji...@apache.org> on 2012/09/14 11:15:07 UTC

[jira] [Created] (SM-2162) Temporary deadlock during shutdown

lorenzo created SM-2162:
---------------------------

             Summary: Temporary deadlock during shutdown
                 Key: SM-2162
                 URL: https://issues.apache.org/jira/browse/SM-2162
             Project: ServiceMix
          Issue Type: Bug
          Components: servicemix-core
    Affects Versions: 3.4.0
         Environment: Linux 3.2.0-2-amd64 #1 SMP Sun Mar 4 22:48:17 UTC 2012 x86_64 GNU/Linux
Java(TM) SE Runtime Environment (build 1.6.0_26-b03)
Java HotSpot(TM) 64-Bit Server VM (build 20.1-b02, mixed mode)
            Reporter: lorenzo


During the shutdown of cxf-se service units servicemix hangs for several minutes and prints this error on the console:

INFO  - ServiceUnitLifeCycle           - Shutting down service unit: type-registry-ws
[Fatal Error] :1:1: Content is not allowed in prolog.
WARN  - ServiceAssemblyLifeCycle       - Could not parse result exception
org.xml.sax.SAXParseException: Content is not allowed in prolog.
	at org.apache.xerces.parsers.DOMParser.parse(Unknown Source)
	at org.apache.xerces.jaxp.DocumentBuilderImpl.parse(Unknown Source)
	at org.apache.servicemix.jbi.framework.ServiceAssemblyLifeCycle.parse(ServiceAssemblyLifeCycle.java:459)
	at org.apache.servicemix.jbi.framework.ServiceAssemblyLifeCycle.getComponentFailure(ServiceAssemblyLifeCycle.java:440)
	at org.apache.servicemix.jbi.framework.ServiceAssemblyLifeCycle.shutDown(ServiceAssemblyLifeCycle.java:250)
	at org.apache.servicemix.jbi.framework.ComponentMBeanImpl.shutDownServiceAssemblies(ComponentMBeanImpl.java:580)
	at org.apache.servicemix.jbi.framework.ComponentMBeanImpl.doShutDown(ComponentMBeanImpl.java:335)
	at org.apache.servicemix.jbi.framework.ComponentRegistry.shutDown(ComponentRegistry.java:116)
	at org.apache.servicemix.jbi.framework.Registry.shutDown(Registry.java:153)
	at org.apache.servicemix.jbi.container.JBIContainer$1.call(JBIContainer.java:783)
	at org.apache.servicemix.jbi.container.JBIContainer$1.call(JBIContainer.java:781)
	at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
	at java.util.concurrent.FutureTask.run(FutureTask.java:138)
	at java.lang.Thread.run(Thread.java:662)
ERROR - ComponentMBeanImpl             - Error shutting down service assembly type-registry-sa

The actual error has nothing to do with XML parsing and it's caused by a Thread.join timeout at ServiceUnitLifeCycle:129.

The XML error is generated at ServiceAssemblyLifeCycle:459 where it tries to parse the timeout message "Timeout expired while waiting for async operation shutdown kdv-pdf-template-ws".

I describe what I think is happening during the shutdown (see attached thread dump):

- the main shutdown thread locks the ComponentRegistry (Thread-43, monitor 0x00000000d4a82010).
- the "AsyncDeployer for shutdown ksign-ws" thread can not call the synchronized deregisterComponent method
- other "AsyncDeployer threads" block on the 0x00000000d4b1b270 monitor owned by the "AsyncDeployer for shutdown ksign-ws" thread.
- after two minutes the Thread.join call times out

I think this is not specific of cxf-se components: it just happens that we have a lot of those.


Workaround: use the "org.apache.servicemix.deployment.timeout" system property to configure a shorter timeout in millis.



--
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

[jira] [Updated] (SM-2162) Temporary deadlock during shutdown

Posted by "lorenzo (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/SM-2162?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

lorenzo updated SM-2162:
------------------------

    Attachment: thread-dump.txt
    
> Temporary deadlock during shutdown
> ----------------------------------
>
>                 Key: SM-2162
>                 URL: https://issues.apache.org/jira/browse/SM-2162
>             Project: ServiceMix
>          Issue Type: Bug
>          Components: servicemix-core
>    Affects Versions: 3.4.0
>         Environment: Linux 3.2.0-2-amd64 #1 SMP Sun Mar 4 22:48:17 UTC 2012 x86_64 GNU/Linux
> Java(TM) SE Runtime Environment (build 1.6.0_26-b03)
> Java HotSpot(TM) 64-Bit Server VM (build 20.1-b02, mixed mode)
>            Reporter: lorenzo
>         Attachments: thread-dump.txt
>
>
> During the shutdown of cxf-se service units servicemix hangs for several minutes and prints this error on the console:
> INFO  - ServiceUnitLifeCycle           - Shutting down service unit: type-registry-ws
> [Fatal Error] :1:1: Content is not allowed in prolog.
> WARN  - ServiceAssemblyLifeCycle       - Could not parse result exception
> org.xml.sax.SAXParseException: Content is not allowed in prolog.
> 	at org.apache.xerces.parsers.DOMParser.parse(Unknown Source)
> 	at org.apache.xerces.jaxp.DocumentBuilderImpl.parse(Unknown Source)
> 	at org.apache.servicemix.jbi.framework.ServiceAssemblyLifeCycle.parse(ServiceAssemblyLifeCycle.java:459)
> 	at org.apache.servicemix.jbi.framework.ServiceAssemblyLifeCycle.getComponentFailure(ServiceAssemblyLifeCycle.java:440)
> 	at org.apache.servicemix.jbi.framework.ServiceAssemblyLifeCycle.shutDown(ServiceAssemblyLifeCycle.java:250)
> 	at org.apache.servicemix.jbi.framework.ComponentMBeanImpl.shutDownServiceAssemblies(ComponentMBeanImpl.java:580)
> 	at org.apache.servicemix.jbi.framework.ComponentMBeanImpl.doShutDown(ComponentMBeanImpl.java:335)
> 	at org.apache.servicemix.jbi.framework.ComponentRegistry.shutDown(ComponentRegistry.java:116)
> 	at org.apache.servicemix.jbi.framework.Registry.shutDown(Registry.java:153)
> 	at org.apache.servicemix.jbi.container.JBIContainer$1.call(JBIContainer.java:783)
> 	at org.apache.servicemix.jbi.container.JBIContainer$1.call(JBIContainer.java:781)
> 	at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
> 	at java.util.concurrent.FutureTask.run(FutureTask.java:138)
> 	at java.lang.Thread.run(Thread.java:662)
> ERROR - ComponentMBeanImpl             - Error shutting down service assembly type-registry-sa
> The actual error has nothing to do with XML parsing and it's caused by a Thread.join timeout at ServiceUnitLifeCycle:129.
> The XML error is generated at ServiceAssemblyLifeCycle:459 where it tries to parse the timeout message "Timeout expired while waiting for async operation shutdown kdv-pdf-template-ws".
> I describe what I think is happening during the shutdown (see attached thread dump):
> - the main shutdown thread locks the ComponentRegistry (Thread-43, monitor 0x00000000d4a82010).
> - the "AsyncDeployer for shutdown ksign-ws" thread can not call the synchronized deregisterComponent method
> - other "AsyncDeployer threads" block on the 0x00000000d4b1b270 monitor owned by the "AsyncDeployer for shutdown ksign-ws" thread.
> - after two minutes the Thread.join call times out
> I think this is not specific of cxf-se components: it just happens that we have a lot of those.
> Workaround: use the "org.apache.servicemix.deployment.timeout" system property to configure a shorter timeout in millis.

--
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

[jira] [Updated] (SM-2162) Temporary deadlock during shutdown

Posted by "lorenzo (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/SM-2162?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

lorenzo updated SM-2162:
------------------------

    Priority: Minor  (was: Major)
    
> Temporary deadlock during shutdown
> ----------------------------------
>
>                 Key: SM-2162
>                 URL: https://issues.apache.org/jira/browse/SM-2162
>             Project: ServiceMix
>          Issue Type: Bug
>          Components: servicemix-core
>    Affects Versions: 3.4.0
>         Environment: Linux 3.2.0-2-amd64 #1 SMP Sun Mar 4 22:48:17 UTC 2012 x86_64 GNU/Linux
> Java(TM) SE Runtime Environment (build 1.6.0_26-b03)
> Java HotSpot(TM) 64-Bit Server VM (build 20.1-b02, mixed mode)
>            Reporter: lorenzo
>            Priority: Minor
>         Attachments: thread-dump.txt
>
>
> During the shutdown of cxf-se service units servicemix hangs for several minutes and prints this error on the console:
> INFO  - ServiceUnitLifeCycle           - Shutting down service unit: type-registry-ws
> [Fatal Error] :1:1: Content is not allowed in prolog.
> WARN  - ServiceAssemblyLifeCycle       - Could not parse result exception
> org.xml.sax.SAXParseException: Content is not allowed in prolog.
> 	at org.apache.xerces.parsers.DOMParser.parse(Unknown Source)
> 	at org.apache.xerces.jaxp.DocumentBuilderImpl.parse(Unknown Source)
> 	at org.apache.servicemix.jbi.framework.ServiceAssemblyLifeCycle.parse(ServiceAssemblyLifeCycle.java:459)
> 	at org.apache.servicemix.jbi.framework.ServiceAssemblyLifeCycle.getComponentFailure(ServiceAssemblyLifeCycle.java:440)
> 	at org.apache.servicemix.jbi.framework.ServiceAssemblyLifeCycle.shutDown(ServiceAssemblyLifeCycle.java:250)
> 	at org.apache.servicemix.jbi.framework.ComponentMBeanImpl.shutDownServiceAssemblies(ComponentMBeanImpl.java:580)
> 	at org.apache.servicemix.jbi.framework.ComponentMBeanImpl.doShutDown(ComponentMBeanImpl.java:335)
> 	at org.apache.servicemix.jbi.framework.ComponentRegistry.shutDown(ComponentRegistry.java:116)
> 	at org.apache.servicemix.jbi.framework.Registry.shutDown(Registry.java:153)
> 	at org.apache.servicemix.jbi.container.JBIContainer$1.call(JBIContainer.java:783)
> 	at org.apache.servicemix.jbi.container.JBIContainer$1.call(JBIContainer.java:781)
> 	at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
> 	at java.util.concurrent.FutureTask.run(FutureTask.java:138)
> 	at java.lang.Thread.run(Thread.java:662)
> ERROR - ComponentMBeanImpl             - Error shutting down service assembly type-registry-sa
> The actual error has nothing to do with XML parsing and it's caused by a Thread.join timeout at ServiceUnitLifeCycle:129.
> The XML error is generated at ServiceAssemblyLifeCycle:459 where it tries to parse the timeout message "Timeout expired while waiting for async operation shutdown kdv-pdf-template-ws".
> I describe what I think is happening during the shutdown (see attached thread dump):
> - the main shutdown thread locks the ComponentRegistry (Thread-43, monitor 0x00000000d4a82010).
> - the "AsyncDeployer for shutdown ksign-ws" thread can not call the synchronized deregisterComponent method
> - other "AsyncDeployer threads" block on the 0x00000000d4b1b270 monitor owned by the "AsyncDeployer for shutdown ksign-ws" thread.
> - after two minutes the Thread.join call times out
> I think this is not specific of cxf-se components: it just happens that we have a lot of those.
> Workaround: use the "org.apache.servicemix.deployment.timeout" system property to configure a shorter timeout in millis.

--
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