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 Sam Ruby <ru...@apache.org> on 2002/08/01 04:48:31 UTC
Intermittent gump failures
We seem to have a truly intermittent failure. To the point where I
literally ran the following, and 38 minutes later had a success:
while grep "BUILD FAILED" all
do
build xml-axis all | tee all
done
The failures allways occur at a consistent point. I inserted trace
statements into org.apache.axis.encoding.TypeMappingImpl to log events
whenever {urn:AddrNoImplSEI}Address was accessed. At the point of the
failure, there were two calls to register:
> [java] at org.apache.axis.encoding.TypeMappingImpl.register(TypeMappingImpl.java:272)
> [java] at org.apache.axis.deployment.wsdd.WSDDService.deployTypeMapping(WSDDService.java:476)
> [java] at org.apache.axis.deployment.wsdd.WSDDService.initTMR(WSDDService.java:583)
> [java] at org.apache.axis.deployment.wsdd.WSDDService.validateDescriptors(WSDDService.java:221)
> [java] at org.apache.axis.deployment.wsdd.WSDDService.<init>(WSDDService.java:206)
> [java] at org.apache.axis.deployment.wsdd.WSDDDeployment.<init>(WSDDDeployment.java:242)
> [java] at org.apache.axis.deployment.wsdd.WSDDDocument.<init>(WSDDDocument.java:107)
> [java] at org.apache.axis.configuration.FileProvider.configureEngine(FileProvider.java:210)
> [java] at org.apache.axis.AxisEngine.init(AxisEngine.java:182)
> [java] at org.apache.axis.AxisEngine.<init>(AxisEngine.java:167)
> [java] at org.apache.axis.server.AxisServer.<init>(AxisServer.java:125)
> [java] at org.apache.axis.server.AxisServer.<init>(AxisServer.java:120)
> [java] at org.apache.axis.transport.http.SimpleAxisServer.getAxisServer(SimpleAxisServer.java:130)
> [java] at org.apache.axis.transport.http.SimpleAxisWorker.run(SimpleAxisWorker.java:187)
> [java] at java.lang.Thread.run(Thread.java:479)
and
> [java] at org.apache.axis.encoding.TypeMappingImpl.register(TypeMappingImpl.java:272)
> [java] at org.apache.axis.deployment.wsdd.WSDDService.deployTypeMapping(WSDDService.java:476)
> [java] at org.apache.axis.deployment.wsdd.WSDDService.initTMR(WSDDService.java:583)
> [java] at org.apache.axis.deployment.wsdd.WSDDService.validateDescriptors(WSDDService.java:221)
> [java] at org.apache.axis.deployment.wsdd.WSDDService.<init>(WSDDService.java:206)
> [java] at org.apache.axis.deployment.wsdd.WSDDDeployment.<init>(WSDDDeployment.java:242)
> [java] at org.apache.axis.deployment.wsdd.WSDDDocument.<init>(WSDDDocument.java:121)
> [java] at org.apache.axis.utils.Admin.processWSDD(Admin.java:155)
> [java] at org.apache.axis.utils.Admin.process(Admin.java:228)
> [java] at org.apache.axis.utils.Admin.AdminService(Admin.java:109)
> [java] at java.lang.reflect.Method.invoke(Native Method)
> [java] at org.apache.axis.providers.java.MsgProvider.processMessage(MsgProvider.java:143)
> [java] at org.apache.axis.providers.java.JavaProvider.invoke(JavaProvider.java:296)
> [java] at org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:71)
> [java] at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:150)
> [java] at org.apache.axis.SimpleChain.invoke(SimpleChain.java:120)
> [java] at org.apache.axis.server.AxisServer.invoke(AxisServer.java:314)
> [java] at org.apache.axis.transport.http.SimpleAxisWorker.run(SimpleAxisWorker.java:379)
> [java] at java.lang.Thread.run(Thread.java:479)
Then the first attempt (it is always the first attempt) to access this
information SOMETIMES fails. Here is a stack traceback from a
successful attempt.
> [java] at org.apache.axis.encoding.TypeMappingImpl.getClassForQName(TypeMappingImpl.java:490)
> [java] at org.apache.axis.description.ServiceDesc.syncOperationToClass(ServiceDesc.java:583)
> [java] at org.apache.axis.description.ServiceDesc.getSyncedOperationsForName(ServiceDesc.java:777)
> [java] at org.apache.axis.description.ServiceDesc.loadServiceDescByIntrospectionRecursive(ServiceDesc.java:666)
> [java] at org.apache.axis.description.ServiceDesc.loadServiceDescByIntrospection(ServiceDesc.java:649)
> [java] at org.apache.axis.description.ServiceDesc.loadServiceDescByIntrospection(ServiceDesc.java:633)
> [java] at org.apache.axis.description.ServiceDesc.initQNameMap(ServiceDesc.java:442)
> [java] at org.apache.axis.description.ServiceDesc.getOperationsByQName(ServiceDesc.java:420)
> [java] at org.apache.axis.MessageContext.getPossibleOperationsByQName(MessageContext.java:237)
> [java] at org.apache.axis.message.BodyBuilder.onStartChild(BodyBuilder.java:145)
> [java] at org.apache.axis.encoding.DeserializationContextImpl.startElement(DeserializationContextImpl.java:861)
> [java] at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown Source)
> [java] at org.apache.xerces.impl.XMLNamespaceBinder.handleStartElement(Unknown Source)
> [java] at org.apache.xerces.impl.XMLNamespaceBinder.startElement(Unknown Source)
> [java] at org.apache.xerces.impl.dtd.XMLDTDValidator.startElement(Unknown Source)
> [java] at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanStartElement(Unknown Source)
> [java] at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
> [java] at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
> [java] at org.apache.xerces.parsers.DTDConfiguration.parse(Unknown Source)
> [java] at org.apache.xerces.parsers.DTDConfiguration.parse(Unknown Source)
> [java] at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
> [java] at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
> [java] at javax.xml.parsers.SAXParser.parse(Unknown Source)
> [java] at org.apache.axis.encoding.DeserializationContextImpl.parse(DeserializationContextImpl.java:213)
> [java] at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:459)
> [java] at org.apache.axis.Message.getSOAPEnvelope(Message.java:365)
> [java] at org.apache.axis.handlers.soap.SOAPService$SOAPRequestHandler.invoke(SOAPService.java:179)
> [java] at org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:71)
> [java] at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:150)
> [java] at org.apache.axis.SimpleChain.invoke(SimpleChain.java:120)
> [java] at org.apache.axis.server.AxisServer.invoke(AxisServer.java:314)
> [java] at org.apache.axis.transport.http.SimpleAxisWorker.run(SimpleAxisWorker.java:379)
The only other piece of relevant information I have gathered so far is
that these three events occurred against three different TypeMappingImpl
instances. This makes no sense to me as the log call was made in the
"else if (pair != null)" path of the getClassForQName (i.e., the xmlType
was found in the instance private HashMap. Following the delegate chain
one hop in the failure case leads to yet another TypeMappingImpl
instance - distinct from the other three.
Frustrating.
- Sam Ruby