[
https://issues.apache.org/jira/browse/AXIS-2854?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13183919#comment-13183919
]
Jaganmohan Reddy commented on AXIS-2854:
----------------------------------------
Yes, enumMap in JavaUtils.isEnumClas is not thread safe.
"[STUCK] ExecuteThread: '1' for queue: 'weblogic.kernel.Default
(self-tuning)'" RUNNABLE
java.util.HashMap.get(HashMap.java:346)
org.apache.axis.utils.JavaUtils.isEnumClass(JavaUtils.java:1060)
> WSDD deployment getting stuck due to race condition in WSDDDeployableItem.
> --------------------------------------------------------------------------
>
> Key: AXIS-2854
> URL: https://issues.apache.org/jira/browse/AXIS-2854
> Project: Axis
> Issue Type: Bug
> Components: Deployment / Registries
> Affects Versions: 1.3, 1.4
> Environment: Weblogic 9.2, SunOS, JDK5
> Reporter: Jaganmohan Reddy
> Labels: deployment, stuck,, synchronized, threading, wsdd
> Attachments: WSDDDeployableItem.java
>
>
> We can observe ExecuteThread: '1' and ExecuteThread: '2' are trying to do
> WSDDDeployment and got stuck at
> java.util.HashMap.get(HashMap.java:346).
> More information regarding 'HashMap.get() can cause an infinite loop!'
> http://mailinator.blogspot.com/2009/06/beautiful-race-condition.html
> http://lightbody.net/blog/2005/07/hashmapget_can_cause_an_infini.html
> Servers need to be restarted or application has to be redeployed to complete
> the deployment.
> "[STUCK] ExecuteThread: '2' for queue: 'weblogic.kernel.Default
> (self-tuning)'"
> RUNNABLE
> java.util.HashMap.get(HashMap.java:346)
> org.apache.axis.utils.JavaUtils.isEnumClass(JavaUtils.java:1060)
>
> org.apache.axis.encoding.ser.BeanSerializerFactory.init(BeanSerializerFactory.java:49)
>
> org.apache.axis.encoding.ser.BeanSerializerFactory.<init>(BeanSerializerFactory.java:42)
>
> org.apache.axis.encoding.ser.BaseSerializerFactory.createFactory(BaseSerializerFactory.java:235)
>
> org.apache.axis.deployment.wsdd.WSDDDeployment.deployMapping(WSDDDeployment.java:286)
>
> org.apache.axis.deployment.wsdd.WSDDDeployment.getTypeMappingRegistry(WSDDDeployment.java:462)
>
> org.apache.axis.configuration.FileProvider.getTypeMappingRegistry(FileProvider.java:262)
>
> org.apache.axis.AxisEngine.getTypeMappingRegistry(AxisEngine.java:348)
> org.apache.axis.handlers.soap.SOAPService.setEngine(SOAPService.java:228)
>
> org.apache.axis.deployment.wsdd.WSDDService.makeNewInstance(WSDDService.java:470)
>
> org.apache.axis.deployment.wsdd.WSDDDeployableItem.getNewInstance(WSDDDeployableItem.java:274)
>
> org.apache.axis.deployment.wsdd.WSDDDeployableItem.getInstance(WSDDDeployableItem.java:260)
>
> org.apache.axis.deployment.wsdd.WSDDDeployment.getService(WSDDDeployment.java:427)
>
> org.apache.axis.configuration.FileProvider.getService(FileProvider.java:231)
> org.apache.axis.AxisEngine.getService(AxisEngine.java:311)
> org.apache.axis.MessageContext.setTargetService(MessageContext.java:755)
> org.apache.axis.handlers.http.URLMapper.invoke(URLMapper.java:50)
>
> org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:32)
> org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)
> org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)
> org.apache.axis.server.AxisServer.invoke(AxisServer.java:239)
>
> org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java:699)
> javax.servlet.http.HttpServlet.service(HttpServlet.java:763)
> org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:327)
> javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
> weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
>
> weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
>
> weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:283)
>
> weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:175)
>
> weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3241)
>
> weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
>
> weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
>
> weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2010)
>
> weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:1916)
>
> weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1366)
> weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
> weblogic.work.ExecuteThread.run(ExecuteThread.java:181)
> "[STUCK] ExecuteThread: '1' for queue: 'weblogic.kernel.Default
> (self-tuning)'" RUNNABLE
> java.util.HashMap.get(HashMap.java:346)
> org.apache.axis.utils.JavaUtils.isEnumClass(JavaUtils.java:1060)
>
> org.apache.axis.encoding.ser.BeanSerializerFactory.init(BeanSerializerFactory.java:49)
>
> org.apache.axis.encoding.ser.BeanSerializerFactory.<init>(BeanSerializerFactory.java:42)
>
> org.apache.axis.encoding.ser.BaseSerializerFactory.createFactory(BaseSerializerFactory.java:235)
>
> org.apache.axis.deployment.wsdd.WSDDDeployment.deployMapping(WSDDDeployment.java:286)
>
> org.apache.axis.deployment.wsdd.WSDDDeployment.getTypeMappingRegistry(WSDDDeployment.java:462)
>
> org.apache.axis.configuration.FileProvider.getTypeMappingRegistry(FileProvider.java:262)
>
> org.apache.axis.AxisEngine.getTypeMappingRegistry(AxisEngine.java:348)
> org.apache.axis.handlers.soap.SOAPService.setEngine(SOAPService.java:228)
>
> org.apache.axis.deployment.wsdd.WSDDService.makeNewInstance(WSDDService.java:470)
>
> org.apache.axis.deployment.wsdd.WSDDDeployableItem.getNewInstance(WSDDDeployableItem.java:274)
>
> org.apache.axis.deployment.wsdd.WSDDDeployableItem.getInstance(WSDDDeployableItem.java:260)
>
> org.apache.axis.deployment.wsdd.WSDDDeployment.getService(WSDDDeployment.java:427)
>
> org.apache.axis.configuration.FileProvider.getService(FileProvider.java:231)
> org.apache.axis.AxisEngine.getService(AxisEngine.java:311)
> org.apache.axis.MessageContext.setTargetService(MessageContext.java:755)
> org.apache.axis.handlers.http.URLMapper.invoke(URLMapper.java:50)
>
> org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:32)
> org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)
> org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)
> org.apache.axis.server.AxisServer.invoke(AxisServer.java:239)
>
> org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java:699)
> javax.servlet.http.HttpServlet.service(HttpServlet.java:763)
> org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:327)
> javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
> weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
>
> weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
>
> weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:283)
>
> weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:175)
>
> weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3241)
>
> weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
>
> weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
>
> weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2010)
>
> weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:1916)
>
> weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1366)
> weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
> weblogic.work.ExecuteThread.run(ExecuteThread.java:181)
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]