airavata-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Raminder Singh <raminderjsi...@gmail.com>
Subject Re: Job cancellation in GFac
Date Tue, 16 Jul 2013 16:18:02 GMT
Thanks Amila for providing the details. Job cancel will be user action called from API or Xbaya.
 I don't think its necessarily always a workflow interpreter operation.  Its will be useful
if we provide an option in API to cancel jobs. I have few other questions

1. We don't need to pass experimentid, workflowid, nodeid all the way to gfac level. GFAC
only need jobid to create cancel request for the job. According to me getting of job id need
to be done in API and only job id need to be passed to this level. 
2. I looked into GramProvider code and did not like the dependency of JobExecutionContext
in these methods.  I observed you are using it get security context. Is not it lightweight
for the client to just set security context?  

Please let me know if you have any questions.

Thanks
Raminder

On Jul 16, 2013, at 11:11 AM, Amila Jayasekara <thejaka.amila@gmail.com> wrote:

> Hi All,
> 
> I have added following methods to GFacProvider interface to do job cancellation. But
we need to figure out from where these methods should be called. As I feel these methods should
get triggered from Workflow Interpretter.
> 
> I would like to use this mail thread to discuss how we can invoke cancellation methods
and how we can expose job cancellation at API.
> 
> Please give feedback.
> 
> Thanks
> Amila
> 
> 
> /**
>      * Cancels all jobs relevant to an experiment.
>      * @param experimentId The experiment id
>      * @param jobExecutionContext The job execution context, contains runtime information.
>      * @throws GFacException If an error occurred while cancelling the job.
>      */
>     void cancelJob(String experimentId, JobExecutionContext jobExecutionContext) throws
GFacException;
> 
>     /**
>      * Cancels all jobs relevant to a workflow in an experiment.
>      * @param experimentId The experiment id
>      * @param workflowId The workflow id.
>      * @param jobExecutionContext The job execution context, contains runtime information.
>      * @throws GFacException If an error occurred while cancelling the job.
>      */
>     void cancelJob(String experimentId, String workflowId,
>                    JobExecutionContext jobExecutionContext) throws GFacException;
> 
>     /**
>      * Cancels the job for a given a workflow id and node id in an experiment.
>      * @param experimentId The experiment id.
>      * @param workflowId The workflow id.
>      * @param nodeId The node id.
>      * @param jobExecutionContext The job execution context relevant to cancel job operation.
>      * @throws GFacException If an error occurred while cancelling the job.
>      */
>     void cancelJob(String experimentId, String workflowId, String nodeId,
>                    JobExecutionContext jobExecutionContext) throws GFacException;


Mime
View raw message