You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by "Davanum Srinivas (JIRA)" <ax...@ws.apache.org> on 2005/11/04 19:26:19 UTC

[jira] Commented: (AXIS-2284) thread hangs on org.apache.axis.utils.JavaUtils.isEnumClass

    [ http://issues.apache.org/jira/browse/AXIS-2284?page=comments#action_12356807 ] 

Davanum Srinivas commented on AXIS-2284:
----------------------------------------

Frank,

looking at isEnumClass(), could you please try to switch the key of the hashmap to the full package + class name instead of the class itself? i know if different classloaders are involved it is dicey, but we are looking for the same info so it should be ok. Please try it and let us know.

thanks,
dims

> thread hangs on org.apache.axis.utils.JavaUtils.isEnumClass
> -----------------------------------------------------------
>
>          Key: AXIS-2284
>          URL: http://issues.apache.org/jira/browse/AXIS-2284
>      Project: Apache Axis
>         Type: Bug
>   Components: Basic Architecture
>     Versions: 1.2RC3
>  Environment: linux java 1.5.0_02
>     Reporter: Frank Luo

>
> It doesn't happen to all machines, but when it does happen, multiple threads are hanging on the same piece of code. Please help since we have deployed to production servers.
> Here is the trace of one thread:
> Thread 1555: (state = IN_JAVA)
>  - java.util.HashMap.eq(java.lang.Object, java.lang.Object) @bci=7, line=277 (Compiled frame; information may be imprecise)
>  - org.apache.axis.utils.JavaUtils.isEnumClass(java.lang.Class) @bci=4, line=967 (Interpreted frame)
>  - org.apache.axis.encoding.ser.BeanSerializerFactory.<init>(java.lang.Class, javax.xml.namespace.QName) @bci=38, line=42 (Interpreted frame)
>  - org.apache.axis.encoding.ser.BaseSerializerFactory.createFactory(java.lang.Class, java.lang.Class, javax.xml.namespace.QName) @bci=37, line=235 (Interpreted frame)
>  - org.apache.axis.client.Call.registerTypeMapping(java.lang.Class, javax.xml.namespace.QName, java.lang.Class, java.lang.Class, boolean) @bci=3, line=2285 (Interpreted frame)
>  - com.sabre.webservices.cruise.CruiseSoapBindingStub.createCall() @bci=262, line=3966 (Interpreted frame)
>  - com.sabre.webservices.cruise.CruiseSoapBindingStub.cabinHold(org.ebxml.www.namespaces.messageHeader.holders.MessageHeaderHolder, org.xmlsoap.schemas.ws._2002._12.secext.holders.SecurityHolder, com.sabre.webservices.cruise.CabinHold) @bci=16, line=4127 (Interpreted frame)
>  - com.travelocity.service.travel.ecruise.sabre.CabinHoldService.execute(org.ebxml.www.namespaces.messageHeader.holders.MessageHeaderHolder, org.xmlsoap.schemas.ws._2002._12.secext.holders.SecurityHolder, java.net.URL, com.sabre.cruise.communications.datatypes.Control) @bci=49, line=60 (Interpreted frame)
>  - com.travelocity.service.travel.ecruise.sabre.SabreCruiseWebServiceManager.execute(com.travelocity.service.travel.ecruise.sabre.CruiseSabreWebService, java.lang.String) @bci=107, line=112 (Interpreted frame)
>  - com.travelocity.communications.travel.ecruise.sabre.cabinhold.SabreCabinHoldService.execute(java.lang.Object) @bci=56, line=45 (Interpreted frame)
>  - com.travelocity.communications.travel.ecruise.service.CruiseDataSourceService.execute(java.lang.Class, java.lang.Object) @bci=42, line=238 (Interpreted frame)
>  - com.travelocity.communications.travel.ecruise.service.CruiseDataSourceService.getCabinHold(com.travelocity.datatype.travel.ecruise.communications.CabinHoldRequest) @bci=23, line=91 (Interpreted frame)
>  - com.travelocity.businessservices.travel.cruise.service.CruiseAvailabilityService.getCabinHold(com.travelocity.datatype.travel.ecruise.communications.CabinHoldRequest) @bci=54, line=639 (Interpreted frame)
>  - com.travelocity.component.cruise.SimpleCruiseBookingManager.getCabinHold(com.travelocity.datatype.travel.ecruise.communications.CabinHoldRequest) @bci=5, line=1720 (Interpreted frame)
>  - com.travelocity.component.cruise.SimpleCruiseBookingManager.holdCabin(com.travelocity.datatype.travel.ecruise.communications.CabinHoldRequest) @bci=45, line=443 (Interpreted frame)
>  - com.travelocity.component.cruise.SimpleCruiseManager.holdCabin(com.travelocity.datatype.travel.ecruise.communications.CabinHoldRequest) @bci=7, line=588 (Interpreted frame)
>  - com.travelocity.presentation.struts.action.cruise.util.CacheUtil.releaseStateroom(com.travelocity.component.cruise.CruiseManager, com.travelocity.datatype.cruise.presentation.session.SelectedData) @bci=101, line=384 (Interpreted frame)
>  - com.travelocity.presentation.struts.action.cruise.util.CacheUtil.cleanSessionCache(javax.servlet.http.HttpServletRequest, com.travelocity.component.cruise.CruiseManager, java.lang.String) @bci=540, line=317 (Interpreted frame)
>  - com.travelocity.presentation.struts.action.cruise.StateroomSelectAction.getActionForward(org.apache.struts.action.ActionMapping, org.apache.struts.action.ActionForm, javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse) @bci=14, line=62 (Interpreted frame)
>  - com.travelocity.presentation.struts.action.AbstractAction.execute(org.apache.struts.action.ActionMapping, org.apache.struts.action.ActionForm, javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse) @bci=364, line=239 (Interpreted frame)
>  - org.apache.struts.action.RequestProcessor.processActionPerform(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, org.apache.struts.action.Action, org.apache.struts.action.ActionForm, org.apache.struts.action.ActionMapping) @bci=7, line=484 (Interpreted frame)
>  - org.apache.struts.action.RequestProcessor.process(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse) @bci=213, line=274 (Interpreted frame)
>  - org.apache.struts.action.ActionServlet.process(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse) @bci=19, line=1482 (Interpreted frame)
>  - com.travelocity.presentation.struts.action.ActionServlet.process(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse) @bci=274, line=142 (Compiled frame)
>  - org.apache.struts.action.ActionServlet.doGet(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse) @bci=3, line=507 (Interpreted frame)
>  - javax.servlet.http.HttpServlet.service(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse) @bci=35, line=689 (Interpreted frame)
>  - javax.servlet.http.HttpServlet.service(javax.servlet.ServletRequest, javax.servlet.ServletResponse) @bci=30, line=802 (Compiled frame)
>  - org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(javax.servlet.ServletRequest, javax.servlet.ServletResponse) @bci=354, line=252 (Compiled frame)
>  - org.apache.catalina.core.ApplicationFilterChain.doFilter(javax.servlet.ServletRequest, javax.servlet.ServletResponse) @bci=101, line=173 (Compiled frame)
>  - com.travelocity.presentation.util.InitializationFilter.doFilter(javax.servlet.ServletRequest, javax.servlet.ServletResponse, javax.servlet.FilterChain) @bci=524, line=193 (Interpreted frame)
>  - org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(javax.servlet.ServletRequest, javax.servlet.ServletResponse) @bci=117, line=202 (Compiled frame)
>  - org.apache.catalina.core.ApplicationFilterChain.doFilter(javax.servlet.ServletRequest, javax.servlet.ServletResponse) @bci=101, line=173 (Compiled frame)
>  - org.apache.catalina.core.StandardWrapperValve.invoke(org.apache.catalina.connector.Request, org.apache.catalina.connector.Response) @bci=670, line=213 (Interpreted frame)
>  - org.apache.catalina.core.StandardContextValve.invoke(org.apache.catalina.connector.Request, org.apache.catalina.connector.Response) @bci=285, line=178 (Interpreted frame)
>  - org.apache.catalina.authenticator.AuthenticatorBase.invoke(org.apache.catalina.connector.Request, org.apache.catalina.connector.Response) @bci=327, line=407 (Compiled frame)
>  - org.apache.catalina.core.StandardHostValve.invoke(org.apache.catalina.connector.Request, org.apache.catalina.connector.Response) @bci=64, line=126 (Interpreted frame)
>  - org.apache.catalina.valves.ErrorReportValve.invoke(org.apache.catalina.connector.Request, org.apache.catalina.connector.Response) @bci=6, line=105 (Interpreted frame)
>  - org.apache.catalina.valves.FastCommonAccessLogValve.invoke(org.apache.catalina.connector.Request, org.apache.catalina.connector.Response) @bci=6, line=481 (Interpreted frame)
>  - org.apache.catalina.valves.AccessLogValve.invoke(org.apache.catalina.connector.Request, org.apache.catalina.connector.Response) @bci=10, line=526 (Compiled frame)
>  - org.apache.catalina.core.StandardEngineValve.invoke(org.apache.catalina.connector.Request, org.apache.catalina.connector.Response) @bci=42, line=107 (Interpreted frame)
>  - org.apache.catalina.connector.CoyoteAdapter.service(org.apache.coyote.Request, org.apache.coyote.Response) @bci=141, line=148 (Interpreted frame)
>  - org.apache.jk.server.JkCoyoteHandler.invoke(org.apache.jk.core.Msg, org.apache.jk.core.MsgContext) @bci=177, line=307 (Interpreted frame)
>  - org.apache.jk.common.HandlerRequest.invoke(org.apache.jk.core.Msg, org.apache.jk.core.MsgContext) @bci=330, line=385 (Interpreted frame)
>  - org.apache.jk.common.ChannelSocket.invoke(org.apache.jk.core.Msg, org.apache.jk.core.MsgContext) @bci=191, line=748 (Interpreted frame)
>  - org.apache.jk.common.ChannelSocket.processConnection(org.apache.jk.core.MsgContext) @bci=101, line=678 (Interpreted frame)
>  - org.apache.jk.common.SocketConnection.runIt(java.lang.Object[]) @bci=8, line=871 (Interpreted frame)
>  - org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run() @bci=167, line=684 (Interpreted frame)
>  - java.lang.Thread.run() @bci=11, line=595 (Interpreted frame)

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira