The GridSAM system provides a Web Service for job submission and monitoring. The primary purpose is to bridge between traditional Distributed Resource Manager and user with a standard programmatic Web Service interface. The goal is to provide a single interface and language to describe and submit computational job. User should be agnostic of the underlying mechanism for executing the computation on the available resources. The motivation is presented in the Use Cases document.
This document specifies the operations of the GridSAM Web Service. This should be read in conjunction with the specification of the Job Submission Description Language. Together they define the description of a job to be launched through GridSAM and the operations to submit and monitor the job.
The operation is used to place a job on a GridSAM system.
The form of the gridsam:submitJob input message is:
<gridsam:submitJob startSuspended="xsd:boolean" xmlns:gridsam="..."> <gridsam:JobDescription> <jsdl:JobDefinition> ... </jsdl:JobDefinition> <xsd:any/>* </gridsam:JobDescription>* </gridsam:submitJob>
The successful result of the gridsam:submitJob operation is an identifier for the newly submitted job. This identifier serves as the context to identify the job in other GridSAM operations.
<gridsam:submitJobResponse xmlns:gridsam="..."> <gridsam:JobIdentifier> <gridsam:ID> xsd:anyURI </gridsam:ID> </gridsam:JobIdentifier>* </gridsam:submitJobResponse>
A fault indicates the submission is void.
The operation is used to obtain status of a job previously submitted to a GridSAM system.
The form of the gridsam:getJobStatus input message is:
<gridsam:getJobStatus xmlns:gridsam="..."> <gridsam:JobIdentifier> <gridsam:ID> xsd:anyURI </gridsam:ID> </gridsam:JobIdentifier>* </gridsam:getJobStatus>
The successful result of the gridsam:getJobStatus operation is a document describing the status of the submitted job.
<gridsam:getJobStatusResponse xmlns:gridsam="..."> <gridsam:JobStatus> <gridsam:JobIdentifier> <gridsam:ID> xsd:anyURI </gridsam:ID> </gridsam:JobIdentifier> <gridsam:Stage> + <gridsam:State> pending|staging-in|staged-in|active|executed| staging-out|staged-out|done|failed|undefined </gridsam:State> <gridsam:Description>xsd:string</gridsam:Description> <gridsam:Time>xsd:DateTime</gridsam:Time> </gridsam:Stage> <gridsam:Property name="xsd:anyURI">? xsd:string </gridsam:Property>? </gridsam:JobStatus>* </gridsam:getJobStatusResponse>
The GridSAM system defines the following terms:
A fault indicates status cannot be obtained.
The operation is used to initiate termination of a job previously submitted to a GridSAM system.
The form of the gridsam:terminateJob input message is:
<gridsam:terminateJob xmlns:gridsam="..."> <gridsam:JobIdentifier> <gridsam:ID> xsd:anyURI </gridsam:ID> </gridsam:JobIdentifier> </gridsam:terminateJob>
The successful result of the gridsam:terminateJob operation is a document describing the status of the terminating job as specified in the gridsam:getJobStatus operation. The termination sequence happens asynchronously. The result document may mark the job as in the terminating stage, however, this is not guaranteed.
A fault indicates the termination is unsuccessful