|
SMILA (incubation) API documentation | ||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectorg.eclipse.smila.jobmanager.persistence.zk.RunStorageZk
public class RunStorageZk
Component for handling jobmanager run data by using zookeeper. Zookeeper structure:
/smila/jobmanager/jobs/<job-name>/workflow-runs/<workflow-run-id>/tasks/<task-id> ................................................................./transient-bulks/<bulkstore+objectname> ................................./data/<data-node> // job counters etc. ................................./worker-data/<workername> // worker specific counters etc. ................................./jobrun-definitions/ // definitions used in a job run ..................................................../jobdef ................................................... /wfdef ..................................................../bucketdef/<bucket-name> ....................../buckets/<bucket-id>/<job-name> // jobs triggered by bucket
| Field Summary | |
|---|---|
static java.lang.String |
JOBMANAGER_PREFIX
prefix for jobmanager data. |
static java.lang.String |
NODE_BUCKETS
data of a job run. |
static java.lang.String |
NODE_DATA
global data of a job run. |
static java.lang.String |
NODE_JOBS
data of a job run. |
static java.lang.String |
NODE_RUN_DEFINITIONS
root node for stored definitions that are used by a job run. |
static java.lang.String |
NODE_RUN_DEFINITIONS_BUCKET
stores bucket definitions used by a job run. |
static java.lang.String |
NODE_RUN_DEFINITIONS_JOB
stores job definition used by a job run. |
static java.lang.String |
NODE_RUN_DEFINITIONS_WORKFLOW
stores workflow definition used by a job run. |
static java.lang.String |
NODE_TASKS
tasks of a workflow step. |
static java.lang.String |
NODE_TRANSIENT_BULKS
transient bulks of a workflow run. |
static java.lang.String |
NODE_WORKERDATA
worker specific data of a job run. |
static java.lang.String |
NODE_WORKFLOW_RUNS
workflow runs of a job run. |
| Constructor Summary | |
|---|---|
RunStorageZk()
|
|
| Method Summary | |
|---|---|
protected void |
activate(ComponentContext context)
OSGi Declarative Services service activation method. |
void |
addJobTrigger(java.lang.String bucketId,
java.lang.String jobName)
|
void |
addTransientBulk(java.lang.String jobName,
java.lang.String jobRunId,
java.lang.String workflowRunId,
java.lang.String bulk)
Stores a transient bulk for the given workflow run. |
java.util.List<java.lang.String> |
cancelJobRun(java.lang.String jobName,
java.lang.String jobRunId)
Cancels the given job run data -> active workflow runs and current tasks will be canceled. |
void |
clear()
Remove all jobmanager run data. |
protected void |
deactivate(ComponentContext context)
OSGi Declarative Services service deactivation method. |
void |
deleteJobRun(java.lang.String jobName,
java.lang.String jobRunId)
Removes the job run data of the given job run. |
void |
deleteWorkflowRun(java.lang.String jobName,
java.lang.String jobRunId,
java.lang.String workflowRunId)
Deletes the data of the given workflow run. |
void |
failedTask(java.lang.String jobName,
java.lang.String jobRunId,
java.lang.String workflowRunId,
java.lang.String stepId,
java.lang.String taskId,
boolean failedAfterRetry,
java.util.Map<java.lang.String,java.lang.String> properties)
Called when a task is failed. |
boolean |
failedWorkflowRun(java.lang.String jobName,
java.lang.String jobRunId,
java.lang.String workflowRunId)
Called when a workflow run failed. |
boolean |
finishJobRun(java.lang.String jobName,
java.lang.String jobRunId)
Called when a job run is finished. |
void |
finishTask(java.lang.String jobName,
java.lang.String jobRunId,
java.lang.String workflowRunId,
java.lang.String stepId,
java.lang.String taskId,
java.util.Map<java.lang.String,java.lang.Number> workerCounter,
java.util.Map<java.lang.String,java.lang.String> properties)
Called when a task is successfully finished. |
boolean |
finishWorkflowRun(java.lang.String jobName,
java.lang.String jobRunId,
java.lang.String workflowRunId)
Called when a workflow run is finished. |
java.util.Collection<java.lang.String> |
getCurrentJobs()
|
java.lang.String |
getCurrentTimestamp()
|
AnyMap |
getJobRunData(java.lang.String jobName,
boolean returnDetails)
|
java.lang.String |
getJobRunId(java.lang.String jobName)
|
JobRunInfo |
getJobRunInfo(java.lang.String jobName)
|
JobState |
getJobState(java.lang.String jobName)
|
JobState |
getJobState(java.lang.String jobName,
java.lang.String jobRunId)
|
int |
getTaskRetries(java.lang.String jobName,
java.lang.String jobRunId,
java.lang.String workflowRunId,
java.lang.String stepId,
java.lang.String taskId)
get the number of retries for the task. |
java.util.Collection<java.lang.String> |
getTransientBulks(java.lang.String jobName,
java.lang.String jobRunId,
java.lang.String workflowRunId)
|
java.util.Collection<java.lang.String> |
getTriggeredJobs(java.lang.String bucketId)
|
AnyMap |
getWorkerData(java.lang.String jobName,
java.lang.String worker)
|
AnyMap |
getWorkflowRunData(java.lang.String jobName,
java.lang.String workflowRunId)
get information about a workflow run. |
boolean |
hasTask(java.lang.String jobName,
java.lang.String workflowRunId,
java.lang.String taskId)
Check if the given task with the given task id exists for the job and workflowrun. |
boolean |
hasTasks(java.lang.String jobName,
java.lang.String jobRunId,
java.lang.String workflowRunId)
|
boolean |
hasWorkflowRuns(java.lang.String jobName,
java.lang.String jobRunId)
|
void |
obsoleteTask(java.lang.String jobName,
java.lang.String jobRunId,
java.lang.String workflowRunId,
java.lang.String stepId,
java.lang.String taskId,
java.util.Map<java.lang.String,java.lang.String> properties)
Called when a task finished as obsolete. |
void |
registerJobRunListener(JobRunListener jobRunListener,
java.lang.String jobName)
|
void |
removeJobTrigger(java.lang.String bucketId,
java.lang.String jobName)
|
void |
retriedTask(java.lang.String jobName,
java.lang.String jobRunId,
java.lang.String workflowRunId,
java.lang.String stepId,
java.lang.String taskId,
boolean retryByWorker,
java.util.Map<java.lang.String,java.lang.String> properties)
Called when a task is retried. |
void |
setJobState(java.lang.String jobName,
java.lang.String jobRunId,
JobState jobState)
Sets the state for the given job run. |
boolean |
setJobState(java.lang.String jobName,
java.lang.String jobRunId,
JobState expectedState,
JobState newState)
Sets the state for the given job run if the given expected state matches the current state. |
void |
setZooKeeperService(ZooKeeperService zkService)
method for DS to set a service reference. |
void |
startJobRun(java.lang.String jobName,
java.lang.String jobRunId,
JobRunMode jobRunMode,
JobRunDefinitions jobRunDefs)
Starts a job run. |
void |
startTask(java.lang.String jobName,
java.lang.String jobRunId,
java.lang.String workflowRunId,
java.lang.String stepId,
java.lang.String taskId)
Called when a new task is started for the given step in the given workflow of the given job run. |
void |
startTask(java.lang.String jobName,
java.lang.String jobRunId,
java.lang.String workflowRunId,
java.lang.String stepId,
java.lang.String taskId,
int numberOfRetries)
Called when a new task is started for the given step in the given workflow of the given job run. |
void |
startTasks(java.lang.String jobName,
java.lang.String jobRunId,
java.lang.String workflowRunId,
java.util.Collection<Task> tasks)
Start multiple new tasks for a given job/workflow run at once. |
java.lang.String |
startWorkflowRun(java.lang.String jobName,
java.lang.String jobRunId)
Called when a new workflow run is started for the given job run. |
void |
unsetZooKeeperService(ZooKeeperService zkService)
method for DS to unset a service reference. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
public static final java.lang.String JOBMANAGER_PREFIX
public static final java.lang.String NODE_WORKFLOW_RUNS
public static final java.lang.String NODE_BUCKETS
public static final java.lang.String NODE_JOBS
public static final java.lang.String NODE_DATA
public static final java.lang.String NODE_WORKERDATA
public static final java.lang.String NODE_TASKS
public static final java.lang.String NODE_TRANSIENT_BULKS
public static final java.lang.String NODE_RUN_DEFINITIONS
public static final java.lang.String NODE_RUN_DEFINITIONS_JOB
public static final java.lang.String NODE_RUN_DEFINITIONS_WORKFLOW
public static final java.lang.String NODE_RUN_DEFINITIONS_BUCKET
| Constructor Detail |
|---|
public RunStorageZk()
| Method Detail |
|---|
public java.lang.String getCurrentTimestamp()
getCurrentTimestamp in interface RunStorageprotected void activate(ComponentContext context)
context - OSGi service component context.protected void deactivate(ComponentContext context)
context - OSGi service component context.public void setZooKeeperService(ZooKeeperService zkService)
zkService - ZooKeeperService reference.public void unsetZooKeeperService(ZooKeeperService zkService)
zkService - ZooKeeperService reference.
public void startJobRun(java.lang.String jobName,
java.lang.String jobRunId,
JobRunMode jobRunMode,
JobRunDefinitions jobRunDefs)
throws RunStorageException
startJobRun in interface RunStoragejobName - The name of the job to start.jobRunId - The job run id for the started job run.jobRunMode - The job run mode for the started job run.jobRunDefs - The job run definitions that are stored for this job run.
RunStorageException - If there's an error while accessing the run storage.
public boolean finishJobRun(java.lang.String jobName,
java.lang.String jobRunId)
throws RunStorageException
finishJobRun in interface RunStoragejobName - The job namejobRunId - The job run id for the finished job run.
RunStorageException - error
public java.util.List<java.lang.String> cancelJobRun(java.lang.String jobName,
java.lang.String jobRunId)
throws RunStorageException
cancelJobRun in interface RunStoragejobName - the jobjobRunId - the job run for which to remove the data
RunStorageException - error
public void deleteJobRun(java.lang.String jobName,
java.lang.String jobRunId)
throws RunStorageException
deleteJobRun in interface RunStoragejobName - the jobjobRunId - the job run for which to remove the data
RunStorageException - error
public java.util.Collection<java.lang.String> getCurrentJobs()
throws RunStorageException
getCurrentJobs in interface RunStorageJobState.PREPARING,JobState.RUNNING, or JobState.FINISHING, but while cleaning up
jobs in states JobState.SUCCEEDED and JobState.FAILED, they are still in RunStorage, too.
RunStorageException - error
public java.lang.String getJobRunId(java.lang.String jobName)
throws RunStorageException
getJobRunId in interface RunStoragejobName - the job
RunStorageException - error
public AnyMap getJobRunData(java.lang.String jobName,
boolean returnDetails)
throws RunStorageException
getJobRunData in interface RunStoragejobName - jobreturnDetails - whether to return details (e.g. workflow/bucket definition)
RunStorageException - error
public AnyMap getWorkflowRunData(java.lang.String jobName,
java.lang.String workflowRunId)
throws RunStorageException
getWorkflowRunData in interface RunStorageJobManagerConstants.DATA_WORKFLOW_RUN_NO_OF_ACTIVE_TASKS and
JobManagerConstants.DATA_WORKFLOW_RUN_NO_OF_TRANSIENT_BULKS. Additional keys may be added.
RunStorageException - jobrun or workflowrun are not active anymore.
public AnyMap getWorkerData(java.lang.String jobName,
java.lang.String worker)
public JobState getJobState(java.lang.String jobName)
throws RunStorageException
getJobState in interface RunStoragejobName - job
RunStorageException - error
public JobState getJobState(java.lang.String jobName,
java.lang.String jobRunId)
throws RunStorageException
getJobState in interface RunStoragejobName - jobjobRunId - job run
RunStorageException - error
public JobRunInfo getJobRunInfo(java.lang.String jobName)
throws RunStorageException
getJobRunInfo in interface RunStoragejobName - job
RunStorageException - error
public void setJobState(java.lang.String jobName,
java.lang.String jobRunId,
JobState jobState)
throws RunStorageException
setJobState in interface RunStoragejobName - jobjobRunId - job runjobState - the new state to set
RunStorageException - error
public boolean setJobState(java.lang.String jobName,
java.lang.String jobRunId,
JobState expectedState,
JobState newState)
throws RunStorageException
setJobState in interface RunStoragejobName - jobjobRunId - job runexpectedState - the old state that is expected to be the current statenewState - the new state to set
RunStorageException - error
public java.lang.String startWorkflowRun(java.lang.String jobName,
java.lang.String jobRunId)
throws RunStorageException
startWorkflowRun in interface RunStoragejobName - jobjobRunId - job run
RunStorageException - error
public boolean finishWorkflowRun(java.lang.String jobName,
java.lang.String jobRunId,
java.lang.String workflowRunId)
throws RunStorageException
RunStorage.deleteWorkflowRun(String, String, String).
finishWorkflowRun in interface RunStoragejobName - jobjobRunId - job runworkflowRunId - workflow run
RunStorageException - error
public boolean failedWorkflowRun(java.lang.String jobName,
java.lang.String jobRunId,
java.lang.String workflowRunId)
throws RunStorageException
failedWorkflowRun in interface RunStoragejobName - jobjobRunId - job runworkflowRunId - workflow run
RunStorageException - error
public void deleteWorkflowRun(java.lang.String jobName,
java.lang.String jobRunId,
java.lang.String workflowRunId)
throws RunStorageException
deleteWorkflowRun in interface RunStoragejobName - jobjobRunId - job runworkflowRunId - workflow run
RunStorageException - error
public boolean hasWorkflowRuns(java.lang.String jobName,
java.lang.String jobRunId)
throws RunStorageException
hasWorkflowRuns in interface RunStoragejobName - jobjobRunId - job run
RunStorageException - error
public boolean hasTasks(java.lang.String jobName,
java.lang.String jobRunId,
java.lang.String workflowRunId)
throws RunStorageException
hasTasks in interface RunStoragejobName - jobjobRunId - job runworkflowRunId - workflow run
RunStorageException - error
public void startTask(java.lang.String jobName,
java.lang.String jobRunId,
java.lang.String workflowRunId,
java.lang.String stepId,
java.lang.String taskId)
throws RunStorageException
startTask in interface RunStoragejobName - jobjobRunId - job runworkflowRunId - workflow runstepId - step idtaskId - task id
RunStorageException
public void startTask(java.lang.String jobName,
java.lang.String jobRunId,
java.lang.String workflowRunId,
java.lang.String stepId,
java.lang.String taskId,
int numberOfRetries)
throws RunStorageException
startTask in interface RunStoragejobName - jobjobRunId - job runworkflowRunId - workflow runstepId - step idtaskId - task idnumberOfRetries - current number of retries for this task
RunStorageException - if task already exists, or other error while storing task
public void startTasks(java.lang.String jobName,
java.lang.String jobRunId,
java.lang.String workflowRunId,
java.util.Collection<Task> tasks)
throws RunStorageException
startTasks in interface RunStoragejobName - jobjobRunId - job runworkflowRunId - workflow runtasks - new tasks
RunStorageException - error while storing task
public void finishTask(java.lang.String jobName,
java.lang.String jobRunId,
java.lang.String workflowRunId,
java.lang.String stepId,
java.lang.String taskId,
java.util.Map<java.lang.String,java.lang.Number> workerCounter,
java.util.Map<java.lang.String,java.lang.String> properties)
throws RunStorageException
finishTask in interface RunStorageRunStorageException
public void obsoleteTask(java.lang.String jobName,
java.lang.String jobRunId,
java.lang.String workflowRunId,
java.lang.String stepId,
java.lang.String taskId,
java.util.Map<java.lang.String,java.lang.String> properties)
throws RunStorageException
obsoleteTask in interface RunStorageRunStorageException
public void failedTask(java.lang.String jobName,
java.lang.String jobRunId,
java.lang.String workflowRunId,
java.lang.String stepId,
java.lang.String taskId,
boolean failedAfterRetry,
java.util.Map<java.lang.String,java.lang.String> properties)
throws RunStorageException
failedTask in interface RunStorageRunStorageException
public void retriedTask(java.lang.String jobName,
java.lang.String jobRunId,
java.lang.String workflowRunId,
java.lang.String stepId,
java.lang.String taskId,
boolean retryByWorker,
java.util.Map<java.lang.String,java.lang.String> properties)
throws RunStorageException
retriedTask in interface RunStorageretryByWorker - whether the retry was triggered by a worker
RunStorageException
public boolean hasTask(java.lang.String jobName,
java.lang.String workflowRunId,
java.lang.String taskId)
throws RunStorageException
hasTask in interface RunStoragejobName - the name of the job.workflowRunId - the id of the workflow runtaskId - the id of the task
RunStorageException - an exception occurred while checking for task existence.
public int getTaskRetries(java.lang.String jobName,
java.lang.String jobRunId,
java.lang.String workflowRunId,
java.lang.String stepId,
java.lang.String taskId)
throws RunStorageException
getTaskRetries in interface RunStoragejobName - jobjobRunId - job runworkflowRunId - workflow runstepId - step idtaskId - task id
RunStorageException - if task already exists, or other error while storing task
public void addTransientBulk(java.lang.String jobName,
java.lang.String jobRunId,
java.lang.String workflowRunId,
java.lang.String bulk)
throws RunStorageException
addTransientBulk in interface RunStoragejobName - jobjobRunId - job runworkflowRunId - workflow runbulk - the bulk id
RunStorageException - error
public java.util.Collection<java.lang.String> getTransientBulks(java.lang.String jobName,
java.lang.String jobRunId,
java.lang.String workflowRunId)
throws RunStorageException
getTransientBulks in interface RunStoragejobName - jobjobRunId - job runworkflowRunId - workflow run
RunStorageException - error
public void clear()
throws RunStorageException
clear in interface RunStorageRunStorageException - error
public java.util.Collection<java.lang.String> getTriggeredJobs(java.lang.String bucketId)
throws RunStorageException
getTriggeredJobs in interface RunStoragebucketId - a bucket ID
RunStorageException - error
public void addJobTrigger(java.lang.String bucketId,
java.lang.String jobName)
throws RunStorageException
addJobTrigger in interface RunStoragebucketId - a bucket IDjobName - job name
RunStorageException - error
public void removeJobTrigger(java.lang.String bucketId,
java.lang.String jobName)
throws RunStorageException
removeJobTrigger in interface RunStoragebucketId - a bucket IDjobName - job name
RunStorageException - error
public void registerJobRunListener(JobRunListener jobRunListener,
java.lang.String jobName)
registerJobRunListener in interface RunStoragejobRunListener - listener to be notified about job run events.jobName - job on which to listen
|
SMILA (incubation) API documentation | ||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||