Bugzilla – Bug 3448
ERROR service.CredentialRefreshListener
Last modified: 2005-10-21 16:03:14
You need to log in before you can comment on or make changes to this bug.
I am still running into problems on credential refreshment, see container.log (server) and GridmanagerLog.voeckler (client) http://griodine.uchicago.edu/ivdgl1/400x1x7200/run0004/ 2005-06-01 13:19:25,454 ERROR service.CredentialRefreshListener [Thread-10,setCredential:69] org.globus.wsrf.NoSuchResourceException: 37583 2005-06-01 13:19:25,462 DEBUG handlers.MessageLoggingHandler [Thread-10,logMessage:51] SOAPEnvelope: <?xml version="1.0" encoding="UTF-8"?> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http:// www.w3.org/2001/XMLSchema-instance"><soapenv:Body><soapenv:Fault><faultcode>soapenv:Server.userException</faultcode><faultstring>java.lang. RuntimeException: Error retrieving resource to set delegated credential37583</faultstring><detail><ns1:stackTrace xmlns:ns1="http://xml.apa che.org/axis/">java.lang.RuntimeException: Error retrieving resource to set delegated credential37583 at org.globus.transfer.reliable.service.CredentialRefreshListener.setCredential(CredentialRefreshListener.java:70) at org.globus.delegation.service.DelegationResource.notifyListeners(DelegationResource.java:307) at org.globus.delegation.service.DelegationResource.setToken(DelegationResource.java:156) at org.globus.delegation.service.DelegationResource.storeToken(DelegationResource.java:141) at org.globus.delegation.service.DelegationService.refresh(DelegationService.java:51) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at org.apache.axis.providers.java.RPCProvider.invokeMethod(RPCProvider.java:384) at org.globus.axis.providers.RPCProvider.invokeMethodSub(RPCProvider.java:107) at org.globus.axis.providers.PrivilegedInvokeMethodAction.run(PrivilegedInvokeMethodAction.java:42) at java.security.AccessController.doPrivileged(Native Method) at javax.security.auth.Subject.doAs(Subject.java:379) at org.globus.gsi.jaas.GlobusSubject.runAs(GlobusSubject.java:55) at org.globus.gsi.jaas.JaasSubject.doAs(JaasSubject.java:90) at org.globus.axis.providers.RPCProvider.invokeMethod(RPCProvider.java:97) at org.apache.axis.providers.java.RPCProvider.processMessage(RPCProvider.java:281) at org.apache.axis.providers.java.JavaProvider.invoke(JavaProvider.java:319) at org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:32) at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118) at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83) at org.apache.axis.handlers.soap.SOAPService.invoke(SOAPService.java:450) at org.apache.axis.server.AxisServer.invoke(AxisServer.java:285) at org.globus.wsrf.container.ServiceThread.doPost(ServiceThread.java:665) at org.globus.wsrf.container.ServiceThread.process(ServiceThread.java:396) at org.globus.wsrf.container.GSIServiceThread.process(GSIServiceThread.java:127) at org.globus.wsrf.container.ServiceThread.run(ServiceThread.java:300) This is a GT checkout from last Friday. While the workflow runs to completion, this error may be part responsible for some delays we are seeing. I myself am using a shared delegation, which I tell Condor-G about, too...
I tried to reproduce using a scenario that I thought would result in this error. The scenario is as follows: I create a Delegation Resource with a life time of 1 hour and write the epr to a file. I use the EPR to create a RFT resource perform the transfer and destroy the resource. I, then, use delegation service's command line util to refresh the credential using the epr/file i wrote in step 1 and I don't see this error. I am cc'ng Rachana so she can suggest other test scenarios.
11 incidences found in run0005 workflow.
In the scenario where it fails, is RFT resource destroyed explicitly ?
I think so, thats what GRAM does after it is done with RFT. it explicitly calls destroy (remove) on the resource.
I did another test suggested by Rachana but could not reproduce this bug. I suspect a race condition between the resource being destroyed and delegation resource is updated that a listener is removed. I will tweak my throughput tester and try to reproduce this by running a bunch parallel clients sharing a deleg cred and each of them calling refresh.
Fix in trunk and in branch.