Get desktop application:
View/edit binary Protocol Buffers messages
Used in:
attributes includes the parameters the task needs.
Used in:
Workflow is the persisted state of a long-running workflow.
uuid is set when the workflow is created, and immutable after that.
factory_name is set with the name of the factory that created the job (and can also restart it). It is set at creation time, and immutable after that.
name is the display name of the workflow.
state describes the state of the job. A job is created as NotStarted, then the Workflow Manager picks it up and starts it, switching it to Running (and populating 'start_time'). The workflow can then fail over to a new Workflow Manager is necessary, and still be in Running state. When done, it goes to Done, 'end_time' is populated, and 'error' is set if there was an error.
data is workflow-specific stored data. It is usually a binary proto-encoded data structure. It can vary throughout the execution of the workflow. It will not change after the workflow is Done.
error is set if the job finished with an error. This field only makes sense if 'state' is Done.
start_time is set when the workflow manager starts a workflow for the first time. This field only makes sense if 'state' is Running or Done.
end_time is set when the workflow is finished. This field only makes sense if 'state' is Done.
create_time is set when the workflow is created.
code_version is used to detect incompabilities between the version of the running workflow and the one which wrote the checkpoint. If they don't match, the workflow must not continue. The author of workflow must update this variable in their implementation when incompabilities are introduced.
tasks stores all tasks of the workflow in a map. The key is a unique name to identify the task, e.g. clone/-80.
Task is the data structure that stores the execution status and the attributes of a task.
settings includes workflow specific data, e.g. the resharding workflow would store the source shards and destination shards.
WorkflowState describes the state of a workflow. This constant should match the Node object described in web/vtctld2/src/app/workflows/node.ts as it is exposed as JSON to the Angular 2 web app.
Used in: