Documentation
¶
Index ¶
- Constants
- func AddV31VersioningInfoToV32(info *workflowpb.WorkflowExecutionVersioningInfo) *workflowpb.WorkflowExecutionVersioningInfo
- func AssignedBuildIdSearchAttribute(buildId string) string
- func BuildIdFromCapabilities(capabilities *commonpb.WorkerVersionCapabilities, ...) string
- func BuildIdIfUsingVersioning(stamp *commonpb.WorkerVersionStamp) string
- func CalculateTaskQueueVersioningInfo(deployments *persistencespb.DeploymentData) (*deploymentspb.DeploymentVersionData, *deploymentspb.DeploymentVersionData)
- func ConvertOverrideToV32(override *workflowpb.VersioningOverride) *workflowpb.VersioningOverride
- func DeploymentFromCapabilities(capabilities *commonpb.WorkerVersionCapabilities, ...) (*deploymentpb.Deployment, error)
- func DeploymentFromDeploymentVersion(dv *deploymentspb.WorkerDeploymentVersion) *deploymentpb.Deployment
- func DeploymentFromExternalDeploymentVersion(dv *deploymentpb.WorkerDeploymentVersion) *deploymentpb.Deployment
- func DeploymentIfValid(d *deploymentpb.Deployment) *deploymentpb.Deployment
- func DeploymentNameFromCapabilities(capabilities *commonpb.WorkerVersionCapabilities, ...) string
- func DeploymentOrVersion(d *deploymentpb.Deployment, v *deploymentspb.WorkerDeploymentVersion) *deploymentpb.Deployment
- func DeploymentVersionFromDeployment(deployment *deploymentpb.Deployment) *deploymentspb.WorkerDeploymentVersion
- func DeploymentVersionFromOptions(options *deploymentpb.WorkerDeploymentOptions) *deploymentspb.WorkerDeploymentVersion
- func DirectiveDeployment(directive *taskqueuespb.TaskVersionDirective) *deploymentpb.Deployment
- func ExternalWorkerDeploymentVersionFromDeployment(deployment *deploymentpb.Deployment) *deploymentpb.WorkerDeploymentVersion
- func ExternalWorkerDeploymentVersionFromStringV31(s string) *deploymentpb.WorkerDeploymentVersion
- func ExternalWorkerDeploymentVersionFromVersion(version *deploymentspb.WorkerDeploymentVersion) *deploymentpb.WorkerDeploymentVersion
- func ExternalWorkerDeploymentVersionToString(v *deploymentpb.WorkerDeploymentVersion) string
- func ExternalWorkerDeploymentVersionToStringV31(v *deploymentpb.WorkerDeploymentVersion) string
- func ExtractVersioningBehaviorFromOverride(override *workflowpb.VersioningOverride) enumspb.VersioningBehavior
- func FindBuildId(versioningData *persistencespb.VersioningData, buildId string) (setIndex, indexInSet int)
- func FindDeployment(deployments *persistencespb.DeploymentData, ...) int
- func FindDeploymentVersion(deployments *persistencespb.DeploymentData, ...) int
- func FindDeploymentVersionForWorkflowID(current *deploymentspb.DeploymentVersionData, ...) *deploymentspb.WorkerDeploymentVersion
- func GenerateDeploymentWorkflowID(deploymentName string) string
- func GenerateVersionWorkflowID(deploymentName string, buildID string) string
- func GetDeploymentNameFromWorkflowID(workflowID string) string
- func GetOverridePinnedVersion(override *workflowpb.VersioningOverride) *deploymentpb.WorkerDeploymentVersion
- func HasDeploymentVersion(deployments *persistencespb.DeploymentData, ...) bool
- func IsUnversionedOrAssignedBuildIdSearchAttribute(buildId string) bool
- func MakeBuildIdDirective(buildId string) *taskqueuespb.TaskVersionDirective
- func MakeDirectiveForWorkflowTask(inheritedBuildId string, assignedBuildId string, ...) *taskqueuespb.TaskVersionDirective
- func MakeUseAssignmentRulesDirective() *taskqueuespb.TaskVersionDirective
- func OverrideIsPinned(override *workflowpb.VersioningOverride) bool
- func PinnedBuildIdSearchAttribute(version string) string
- func StampFromBuildId(buildId string) *commonpb.WorkerVersionStamp
- func StampFromCapabilities(cap *commonpb.WorkerVersionCapabilities) *commonpb.WorkerVersionStamp
- func StampIfUsingVersioning(stamp *commonpb.WorkerVersionStamp) *commonpb.WorkerVersionStamp
- func UnversionedBuildIdSearchAttribute(buildId string) string
- func ValidateDeployment(deployment *deploymentpb.Deployment) error
- func ValidateDeploymentVersion(version *deploymentspb.WorkerDeploymentVersion) error
- func ValidateDeploymentVersionStringV31(version string) (*deploymentspb.WorkerDeploymentVersion, error)
- func ValidateTaskVersionDirective(directive *taskqueuespb.TaskVersionDirective, ...) error
- func ValidateVersioningOverride(override *workflowpb.VersioningOverride) error
- func VersionStampToBuildIdSearchAttribute(stamp *commonpb.WorkerVersionStamp) string
- func VersionedBuildIdSearchAttribute(buildId string) string
- func WorkerDeploymentVersionFromStringV31(s string) (*deploymentspb.WorkerDeploymentVersion, error)
- func WorkerDeploymentVersionFromStringV32(s string) (*deploymentspb.WorkerDeploymentVersion, error)
- func WorkerDeploymentVersionToStringV31(v *deploymentspb.WorkerDeploymentVersion) string
- func WorkerDeploymentVersionToStringV32(v *deploymentspb.WorkerDeploymentVersion) string
- func WorkflowsExistForBuildId(ctx context.Context, visibilityManager manager.VisibilityManager, ...) (bool, error)
- type IsWFTaskQueueInVersionDetector
Constants ¶
const ( BuildIdSearchAttributePrefixPinned = "pinned" BuildIdSearchAttributeDelimiter = ":" BuildIdSearchAttributeEscape = "|" // UnversionedSearchAttribute is the sentinel value used to mark all unversioned workflows UnversionedSearchAttribute = buildIdSearchAttributePrefixUnversioned UnversionedVersionId = "__unversioned__" // WorkerDeploymentVersionIdDelimiterV31 will be deleted once we stop supporting v31 version string fields // in external and internal APIs. Until then, both delimiters are banned in deployment name. All // deprecated version string fields in APIs keep using the old delimiter. Workflow SA uses new delimiter. WorkerDeploymentVersionIdDelimiterV31 = "." WorkerDeploymentVersionIdDelimiter = ":" WorkerDeploymentVersionWorkflowIDPrefix = "temporal-sys-worker-deployment-version" WorkerDeploymentWorkflowIDPrefix = "temporal-sys-worker-deployment" WorkerDeploymentVersionWorkflowIDDelimeter = ":" WorkerDeploymentVersionWorkflowIDEscape = "|" )
Variables ¶
This section is empty.
Functions ¶
func AddV31VersioningInfoToV32 ¶ added in v1.28.0
func AddV31VersioningInfoToV32(info *workflowpb.WorkflowExecutionVersioningInfo) *workflowpb.WorkflowExecutionVersioningInfo
We store versioning info in the modern v0.32 format, so call this before returning the object to readers to mutatively populate the missing fields.
func AssignedBuildIdSearchAttribute ¶ added in v1.24.0
AssignedBuildIdSearchAttribute returns the search attribute value for the currently assigned build ID
func BuildIdFromCapabilities ¶ added in v1.28.0
func BuildIdFromCapabilities(capabilities *commonpb.WorkerVersionCapabilities, options *deploymentpb.WorkerDeploymentOptions) string
func BuildIdIfUsingVersioning ¶ added in v1.24.0
func BuildIdIfUsingVersioning(stamp *commonpb.WorkerVersionStamp) string
BuildIdIfUsingVersioning returns the given WorkerVersionStamp if it is using versioning, otherwise returns nil.
func CalculateTaskQueueVersioningInfo ¶ added in v1.27.0
func CalculateTaskQueueVersioningInfo(deployments *persistencespb.DeploymentData) (*deploymentspb.DeploymentVersionData, *deploymentspb.DeploymentVersionData)
func ConvertOverrideToV32 ¶ added in v1.28.0
func ConvertOverrideToV32(override *workflowpb.VersioningOverride) *workflowpb.VersioningOverride
ConvertOverrideToV32 reads from deprecated fields and returns a new object with ONLY the equivalent non-deprecated v0.32 fields. Should be used to replace any passed in override that is stored in persistence.
func DeploymentFromCapabilities ¶ added in v1.26.2
func DeploymentFromCapabilities(capabilities *commonpb.WorkerVersionCapabilities, options *deploymentpb.WorkerDeploymentOptions) (*deploymentpb.Deployment, error)
DeploymentFromCapabilities returns the deployment if it is using versioning V3, otherwise nil. It returns the deployment from the `options` if present, otherwise, from `capabilities`,
func DeploymentFromDeploymentVersion ¶ added in v1.27.0
func DeploymentFromDeploymentVersion(dv *deploymentspb.WorkerDeploymentVersion) *deploymentpb.Deployment
DeploymentFromDeploymentVersion Temporary helper function to convert WorkerDeploymentVersion to Deployment proto until we update code to use the new proto in all places.
func DeploymentFromExternalDeploymentVersion ¶ added in v1.28.0
func DeploymentFromExternalDeploymentVersion(dv *deploymentpb.WorkerDeploymentVersion) *deploymentpb.Deployment
DeploymentFromExternalDeploymentVersion Temporary helper function to convert WorkerDeploymentVersion to Deployment proto until we update code to use the new proto in all places.
func DeploymentIfValid ¶ added in v1.27.0
func DeploymentIfValid(d *deploymentpb.Deployment) *deploymentpb.Deployment
DeploymentIfValid returns the deployment back if is both of its fields have value.
func DeploymentNameFromCapabilities ¶ added in v1.28.0
func DeploymentNameFromCapabilities(capabilities *commonpb.WorkerVersionCapabilities, options *deploymentpb.WorkerDeploymentOptions) string
func DeploymentOrVersion ¶ added in v1.27.0
func DeploymentOrVersion(d *deploymentpb.Deployment, v *deploymentspb.WorkerDeploymentVersion) *deploymentpb.Deployment
DeploymentOrVersion Temporary helper function to return a Deployment based on passed Deployment or WorkerDeploymentVersion objects, if `v` is not nil, it'll take precedence.
func DeploymentVersionFromDeployment ¶ added in v1.27.0
func DeploymentVersionFromDeployment(deployment *deploymentpb.Deployment) *deploymentspb.WorkerDeploymentVersion
DeploymentVersionFromDeployment Temporary helper function to convert Deployment to WorkerDeploymentVersion proto until we update code to use the new proto in all places.
func DeploymentVersionFromOptions ¶ added in v1.27.0
func DeploymentVersionFromOptions(options *deploymentpb.WorkerDeploymentOptions) *deploymentspb.WorkerDeploymentVersion
func DirectiveDeployment ¶ added in v1.27.0
func DirectiveDeployment(directive *taskqueuespb.TaskVersionDirective) *deploymentpb.Deployment
DirectiveDeployment Temporary function until Directive proto is removed.
func ExternalWorkerDeploymentVersionFromDeployment ¶ added in v1.28.0
func ExternalWorkerDeploymentVersionFromDeployment(deployment *deploymentpb.Deployment) *deploymentpb.WorkerDeploymentVersion
ExternalWorkerDeploymentVersionFromDeployment Temporary helper function to convert Deployment to WorkerDeploymentVersion proto until we update code to use the new proto in all places.
func ExternalWorkerDeploymentVersionFromStringV31 ¶ added in v1.28.0
func ExternalWorkerDeploymentVersionFromStringV31(s string) *deploymentpb.WorkerDeploymentVersion
func ExternalWorkerDeploymentVersionFromVersion ¶ added in v1.28.0
func ExternalWorkerDeploymentVersionFromVersion(version *deploymentspb.WorkerDeploymentVersion) *deploymentpb.WorkerDeploymentVersion
ExternalWorkerDeploymentVersionFromVersion Temporary helper function to convert internal Worker Deployment to WorkerDeploymentVersion proto until we update code to use the new proto in all places.
func ExternalWorkerDeploymentVersionToString ¶ added in v1.28.0
func ExternalWorkerDeploymentVersionToString(v *deploymentpb.WorkerDeploymentVersion) string
func ExternalWorkerDeploymentVersionToStringV31 ¶ added in v1.28.0
func ExternalWorkerDeploymentVersionToStringV31(v *deploymentpb.WorkerDeploymentVersion) string
func ExtractVersioningBehaviorFromOverride ¶ added in v1.28.0
func ExtractVersioningBehaviorFromOverride(override *workflowpb.VersioningOverride) enumspb.VersioningBehavior
func FindBuildId ¶
func FindBuildId(versioningData *persistencespb.VersioningData, buildId string) (setIndex, indexInSet int)
FindBuildId finds a build ID in the version data's sets, returning (set index, index within that set). Returns -1, -1 if not found.
func FindDeployment ¶ added in v1.28.0
func FindDeployment(deployments *persistencespb.DeploymentData, deployment *deploymentpb.Deployment) int
[cleanup-wv-pre-release]
func FindDeploymentVersion ¶ added in v1.28.0
func FindDeploymentVersion(deployments *persistencespb.DeploymentData, v *deploymentspb.WorkerDeploymentVersion) int
func FindDeploymentVersionForWorkflowID ¶ added in v1.27.0
func FindDeploymentVersionForWorkflowID( current *deploymentspb.DeploymentVersionData, ramping *deploymentspb.DeploymentVersionData, workflowId string, ) *deploymentspb.WorkerDeploymentVersion
FindDeploymentVersionForWorkflowID returns the deployment version that should be used for a particular workflow ID based on the versioning info of the task queue. Nil means unversioned.
func GenerateDeploymentWorkflowID ¶ added in v1.27.0
GenerateDeploymentWorkflowID is a helper that generates a system accepted workflowID which are used in our Worker Deployment workflows
func GenerateVersionWorkflowID ¶ added in v1.27.0
GenerateVersionWorkflowID is a helper that generates a system accepted workflowID which are used in our Worker Deployment Version workflows
func GetDeploymentNameFromWorkflowID ¶ added in v1.28.0
func GetOverridePinnedVersion ¶ added in v1.28.0
func GetOverridePinnedVersion(override *workflowpb.VersioningOverride) *deploymentpb.WorkerDeploymentVersion
func HasDeploymentVersion ¶ added in v1.28.0
func HasDeploymentVersion(deployments *persistencespb.DeploymentData, v *deploymentspb.WorkerDeploymentVersion) bool
func IsUnversionedOrAssignedBuildIdSearchAttribute ¶ added in v1.24.0
IsUnversionedOrAssignedBuildIdSearchAttribute returns the value is "unversioned" or "assigned:<bld>"
func MakeBuildIdDirective ¶ added in v1.24.0
func MakeBuildIdDirective(buildId string) *taskqueuespb.TaskVersionDirective
func MakeDirectiveForWorkflowTask ¶ added in v1.22.0
func MakeDirectiveForWorkflowTask( inheritedBuildId string, assignedBuildId string, stamp *commonpb.WorkerVersionStamp, hasCompletedWorkflowTask bool, behavior enumspb.VersioningBehavior, deployment *deploymentpb.Deployment, ) *taskqueuespb.TaskVersionDirective
MakeDirectiveForWorkflowTask returns a versioning directive based on the following parameters: - inheritedBuildId: build ID inherited from a past/previous wf execution (for Child WF or CaN) - assignedBuildId: the build ID to which the WF is currently assigned (i.e. mutable state's AssginedBuildId) - stamp: the latest versioning stamp of the execution (only needed for old versioning) - hasCompletedWorkflowTask: if the wf has completed any WFT - behavior: workflow's effective behavior - deployment: workflow's effective deployment
func MakeUseAssignmentRulesDirective ¶ added in v1.24.0
func MakeUseAssignmentRulesDirective() *taskqueuespb.TaskVersionDirective
func OverrideIsPinned ¶ added in v1.28.0
func OverrideIsPinned(override *workflowpb.VersioningOverride) bool
func PinnedBuildIdSearchAttribute ¶ added in v1.26.2
PinnedBuildIdSearchAttribute creates the pinned search attribute for the BuildIds list, used as a visibility optimization. For pinned workflows using WorkerDeployment APIs (ms.GetEffectiveVersioningBehavior() == PINNED && ms.executionInfo.VersioningInfo.Version != ""), this will be `pinned:<version>`. The version used will be the override version if set, or the versioningInfo.Version.
If deprecated Deployment-based APIs are in use and the workflow is pinned, `pinned:<deployment_series_name>:<deployment_build_id>` will. The values used will be the override deployment_series and build_id if set, or versioningInfo.Deployment.
If the workflow becomes unpinned or unversioned, this entry will be removed from that list.
func StampFromBuildId ¶ added in v1.26.2
func StampFromBuildId(buildId string) *commonpb.WorkerVersionStamp
func StampFromCapabilities ¶ added in v1.24.0
func StampFromCapabilities(cap *commonpb.WorkerVersionCapabilities) *commonpb.WorkerVersionStamp
func StampIfUsingVersioning ¶ added in v1.22.0
func StampIfUsingVersioning(stamp *commonpb.WorkerVersionStamp) *commonpb.WorkerVersionStamp
StampIfUsingVersioning returns the given WorkerVersionStamp if it is using versioning, otherwise returns nil.
func UnversionedBuildIdSearchAttribute ¶
UnversionedBuildIdSearchAttribute returns the search attribute value for an unversioned build ID
func ValidateDeployment ¶ added in v1.26.2
func ValidateDeployment(deployment *deploymentpb.Deployment) error
ValidateDeployment returns error if the deployment is nil or it has empty build ID or deployment name.
func ValidateDeploymentVersion ¶ added in v1.27.0
func ValidateDeploymentVersion(version *deploymentspb.WorkerDeploymentVersion) error
ValidateDeploymentVersion returns error if the deployment version is nil or it has empty version or deployment name.
func ValidateDeploymentVersionStringV31 ¶ added in v1.28.0
func ValidateDeploymentVersionStringV31(version string) (*deploymentspb.WorkerDeploymentVersion, error)
ValidateDeploymentVersionStringV31 returns error if the deployment version is nil or it has empty version or deployment name.
func ValidateTaskVersionDirective ¶ added in v1.27.0
func ValidateTaskVersionDirective( directive *taskqueuespb.TaskVersionDirective, wfBehavior enumspb.VersioningBehavior, wfDeployment *deploymentpb.Deployment, scheduledDeployment *deploymentpb.Deployment, ) error
func ValidateVersioningOverride ¶ added in v1.26.2
func ValidateVersioningOverride(override *workflowpb.VersioningOverride) error
func VersionStampToBuildIdSearchAttribute ¶
func VersionStampToBuildIdSearchAttribute(stamp *commonpb.WorkerVersionStamp) string
VersionStampToBuildIdSearchAttribute returns the search attribute value for a version stamp
func VersionedBuildIdSearchAttribute ¶
VersionedBuildIdSearchAttribute returns the search attribute value for a versioned build ID
func WorkerDeploymentVersionFromStringV31 ¶ added in v1.28.0
func WorkerDeploymentVersionFromStringV31(s string) (*deploymentspb.WorkerDeploymentVersion, error)
func WorkerDeploymentVersionFromStringV32 ¶ added in v1.28.0
func WorkerDeploymentVersionFromStringV32(s string) (*deploymentspb.WorkerDeploymentVersion, error)
func WorkerDeploymentVersionToStringV31 ¶ added in v1.28.0
func WorkerDeploymentVersionToStringV31(v *deploymentspb.WorkerDeploymentVersion) string
func WorkerDeploymentVersionToStringV32 ¶ added in v1.28.0
func WorkerDeploymentVersionToStringV32(v *deploymentspb.WorkerDeploymentVersion) string
Types ¶
type IsWFTaskQueueInVersionDetector ¶ added in v1.28.0
type IsWFTaskQueueInVersionDetector = func(ctx context.Context, namespaceID, tq string, version *deploymentpb.WorkerDeploymentVersion) (bool, error)
func GetIsWFTaskQueueInVersionDetector ¶ added in v1.28.0
func GetIsWFTaskQueueInVersionDetector(matchingClient resource.MatchingClient) IsWFTaskQueueInVersionDetector