Class: WorkflowExecutionVersioningInfo
workflow.v1.WorkflowExecutionVersioningInfo
Holds all the information about versioning for a workflow execution. Experimental. Versioning info is experimental and might change in the future.
Implements
Constructors
constructor
• new WorkflowExecutionVersioningInfo(properties?
): WorkflowExecutionVersioningInfo
Constructs a new WorkflowExecutionVersioningInfo.
Parameters
Name | Type | Description |
---|---|---|
properties? | IWorkflowExecutionVersioningInfo | Properties to set |
Returns
WorkflowExecutionVersioningInfo
Properties
behavior
• behavior: VersioningBehavior
Versioning behavior determines how the server should treat this execution when workers are
upgraded. When present it means this workflow execution is versioned; UNSPECIFIED means
unversioned. See the comments in VersioningBehavior
enum for more info about different
behaviors.
This field is first set after an execution completes its first workflow task on a versioned
worker, and set again on completion of every subsequent workflow task.
Note that behavior
is overridden by versioning_override
if the latter is present.
Implementation of
IWorkflowExecutionVersioningInfo.behavior
deployment
• Optional
deployment: null
| IDeployment
The worker deployment that completed the last workflow task of this workflow execution. Must
be present if behavior
is set. Absent value means no workflow task is completed, or the
last workflow task was completed by an unversioned worker. Unversioned workers may still send
a deployment value which will be stored here, so the right way to check if an execution is
versioned if an execution is versioned or not is via the behavior
field.
Note that deployment
is overridden by versioning_override
if the latter is present.
Implementation of
IWorkflowExecutionVersioningInfo.deployment
deploymentTransition
• Optional
deploymentTransition: null
| IDeploymentTransition
When present, indicates the workflow is transitioning to a different deployment. Can
indicate one of the following transitions: unversioned -> versioned, versioned -> versioned
on a different deployment, or versioned -> unversioned.
Not applicable to workflows with PINNED behavior.
When a workflow with AUTO_UPGRADE behavior creates a new workflow task, it will automatically
start a transition to the task queue's current deployment if the task queue's current
deployment is different from the workflow's deployment.
If the AUTO_UPGRADE workflow is stuck due to backlogged activity or workflow tasks, those
tasks will be redirected to the task queue's current deployment. As soon as a poller from
that deployment is available to receive the task, the workflow will automatically start a
transition to that deployment and continue execution there.
A deployment transition can only exist while there is a pending or started workflow task.
Once the pending workflow task completes on the transition's target deployment, the
transition completes and the workflow's deployment
and behavior
fields are updated per
the worker's task completion response.
Pending activities will not start new attempts during a transition. Once the transition is
completed, pending activities will start their next attempt on the new deployment.
Implementation of
IWorkflowExecutionVersioningInfo.deploymentTransition
versioningOverride
• Optional
versioningOverride: null
| IVersioningOverride
Present if user has set an execution-specific versioning override. This override takes
precedence over SDK-sent behavior
(and deployment
when override is PINNED). An override
can be set when starting a new execution, as well as afterwards by calling the
UpdateWorkflowExecutionOptions
API.
Implementation of
IWorkflowExecutionVersioningInfo.versioningOverride
Methods
toJSON
▸ toJSON(): Object
Converts this WorkflowExecutionVersioningInfo to JSON.
Returns
Object
JSON object
create
▸ create(properties?
): WorkflowExecutionVersioningInfo
Creates a new WorkflowExecutionVersioningInfo instance using the specified properties.
Parameters
Name | Type | Description |
---|---|---|
properties? | IWorkflowExecutionVersioningInfo | Properties to set |
Returns
WorkflowExecutionVersioningInfo
WorkflowExecutionVersioningInfo instance
decode
▸ decode(reader
, length?
): WorkflowExecutionVersioningInfo
Decodes a WorkflowExecutionVersioningInfo message from the specified reader or buffer.
Parameters
Name | Type | Description |
---|---|---|
reader | Uint8Array | Reader | Reader or buffer to decode from |
length? | number | Message length if known beforehand |
Returns
WorkflowExecutionVersioningInfo
WorkflowExecutionVersioningInfo
Throws
If the payload is not a reader or valid buffer
Throws
If required fields are missing
decodeDelimited
▸ decodeDelimited(reader
): WorkflowExecutionVersioningInfo
Decodes a WorkflowExecutionVersioningInfo message from the specified reader or buffer, length delimited.
Parameters
Name | Type | Description |
---|---|---|
reader | Uint8Array | Reader | Reader or buffer to decode from |
Returns
WorkflowExecutionVersioningInfo
WorkflowExecutionVersioningInfo
Throws
If the payload is not a reader or valid buffer
Throws
If required fields are missing
encode
▸ encode(message
, writer?
): Writer
Encodes the specified WorkflowExecutionVersioningInfo message. Does not implicitly temporal.api.workflow.v1.WorkflowExecutionVersioningInfo.verify|verify messages.
Parameters
Name | Type | Description |
---|---|---|
message | IWorkflowExecutionVersioningInfo | WorkflowExecutionVersioningInfo message or plain object to encode |
writer? | Writer | Writer to encode to |
Returns
Writer
Writer
encodeDelimited
▸ encodeDelimited(message
, writer?
): Writer
Encodes the specified WorkflowExecutionVersioningInfo message, length delimited. Does not implicitly temporal.api.workflow.v1.WorkflowExecutionVersioningInfo.verify|verify messages.
Parameters
Name | Type | Description |
---|---|---|
message | IWorkflowExecutionVersioningInfo | WorkflowExecutionVersioningInfo message or plain object to encode |
writer? | Writer | Writer to encode to |
Returns
Writer
Writer
fromObject
▸ fromObject(object
): WorkflowExecutionVersioningInfo
Creates a WorkflowExecutionVersioningInfo message from a plain object. Also converts values to their respective internal types.
Parameters
Name | Type | Description |
---|---|---|
object | Object | Plain object |
Returns
WorkflowExecutionVersioningInfo
WorkflowExecutionVersioningInfo
getTypeUrl
▸ getTypeUrl(typeUrlPrefix?
): string
Gets the default type url for WorkflowExecutionVersioningInfo
Parameters
Name | Type | Description |
---|---|---|
typeUrlPrefix? | string | your custom typeUrlPrefix(default "type.googleapis.com") |
Returns
string
The default type url
toObject
▸ toObject(message
, options?
): Object
Creates a plain object from a WorkflowExecutionVersioningInfo message. Also converts values to other types if specified.
Parameters
Name | Type | Description |
---|---|---|
message | WorkflowExecutionVersioningInfo | WorkflowExecutionVersioningInfo |
options? | IConversionOptions | Conversion options |
Returns
Object
Plain object