Bug 5800 - adjust globusrun-ws to changes in job termination in gram in GT4.2
: adjust globusrun-ws to changes in job termination in gram in GT4.2
Status: RESOLVED FIXED
: GRAM
wsrf gram clients
: 4.1.2
: Macintosh All
: P3 normal
: 4.2
Assigned To:
:
:
:
:
  Show dependency treegraph
 
Reported: 2008-01-21 16:08 by
Modified: 2008-04-30 16:09 (History)


Attachments


Note

You need to log in before you can comment on or make changes to this bug.


Description From 2008-01-21 16:08:12
Gram4's port type does no longer extend from the ImmediateResourceTermination
port type.
Instead Gram4 offers a method terminate as described in the attached
document at http://www.globus.org/mail_archive/gram-dev/2008/01/msg00000.html

Find the new terminate method in 
ws-gram/common/schema/gram/jdd/terminate_managed_job_provider_port_type.wsdl
of ws-gram in branch ws-gram-bug5247

The terminate operation is implemented by a gram4 operation provider
in 4.2. Both MEJS and MMJS inherit this functionality.

A possible scenario for globusrun-ws could be:

a) In batch mode: globusrun-ws -kill -j eprFile
   call terminate with destroyAfterCleanup set to false and
   destroyDelegatedCredentials set to true.
   Once the final notification came in (or after polling for job state
   and the job being in a final state) a second call to terminate() with
   destroyAfterCleanup set to true and destroyDelegatedCredentials set
   to true will destroy the resource and potentially delegated credentials.

b) In interactive mode:
   1. The job is fully processed:
      call terminate with destroyAfterCleanup set to true and
      destroyDelegatedCredentials set to true. This would destroy the
      job resource and potentially delegated credentials immediately.
   2. The client interrupts using Ctrl-C:
      call terminate with destroyAfterCleanup set to false and
      destroyDelegatedCredentials set to true.
      Once the final notification came in (or after polling for job state
      and the job being in a final state) a second call to terminate() with
      destroyAfterCleanup set to true and destroyDelegatedCredentials set
      to true will destroy the resource.

      In case the client hits Ctrl-C again because termination takes too
      long a second call to terminate() with destroyAfterCleanup set to
      true and destroyDelegatedCredentials set to true will cause that
      the job resource will finally be destroyed and globusrun-ws can go
      away.

The initial call to terminate with destroyAfterCleanup set to false gives
the client a chance to definitely get informed about the success of the
termination, either by the last notification (UserTerminateDone,
UserTerminateFailed) or by polling for state in case the final notification
didn't come through.

The new code of ws-gram can be found in branch ws-gram-bug5247.
------- Comment #1 From 2008-02-07 15:23:55 -------
Committed code implementing this behavior to the ws-gram-bug5247 branch.
------- Comment #2 From 2008-04-04 14:37:32 -------
Joe can this all done?  Is this code in the trunk?  How did you test it?  Are
there any new globusrun-ws test for these changes?

-Stu
------- Comment #3 From 2008-04-17 16:04:09 -------
This is all in trunk. Not sure how to automate tests for this.