Table of Contents

Class CompatibleBuildIdRedirectRule

Namespace
Temporalio.Api.TaskQueue.V1
Assembly
Temporalio.dll

These rules apply to tasks assigned to a particular Build ID (source_build_id) to redirect them to another compatible Build ID (target_build_id).

It is user's responsibility to ensure that the target Build ID is compatible with the source Build ID (e.g. by using the Patching API).

Most deployments are not expected to need these rules, however following situations can greatly benefit from redirects:

  • Need to move long-running Workflow Executions from an old Build ID to a newer one.
  • Need to hotfix some broken or stuck Workflow Executions.

In steady state, redirect rules are beneficial when dealing with old Executions ran on now-decommissioned Build IDs:

  • To redirecting the Workflow Queries to the current (compatible) Build ID.
  • To be able to Reset an old Execution so it can run on the current (compatible) Build ID.

Redirect rules can be chained.

public sealed class CompatibleBuildIdRedirectRule : IMessage<CompatibleBuildIdRedirectRule>, IEquatable<CompatibleBuildIdRedirectRule>, IDeepCloneable<CompatibleBuildIdRedirectRule>, IBufferMessage, IMessage
Inheritance
CompatibleBuildIdRedirectRule
Implements
IBufferMessage
IMessage
Inherited Members

Constructors

CompatibleBuildIdRedirectRule()

public CompatibleBuildIdRedirectRule()

CompatibleBuildIdRedirectRule(CompatibleBuildIdRedirectRule)

public CompatibleBuildIdRedirectRule(CompatibleBuildIdRedirectRule other)

Parameters

other CompatibleBuildIdRedirectRule

Fields

SourceBuildIdFieldNumber

Field number for the "source_build_id" field.

public const int SourceBuildIdFieldNumber = 1

Field Value

int

TargetBuildIdFieldNumber

Field number for the "target_build_id" field.

public const int TargetBuildIdFieldNumber = 2

Field Value

int

Properties

Descriptor

public static MessageDescriptor Descriptor { get; }

Property Value

MessageDescriptor

Parser

public static MessageParser<CompatibleBuildIdRedirectRule> Parser { get; }

Property Value

MessageParser<CompatibleBuildIdRedirectRule>

SourceBuildId

public string SourceBuildId { get; set; }

Property Value

string

TargetBuildId

Target Build ID must be compatible with the Source Build ID; that is it must be able to process event histories made by the Source Build ID by using Patching or other means.

public string TargetBuildId { get; set; }

Property Value

string

Methods

CalculateSize()

Calculates the size of this message in Protocol Buffer wire format, in bytes.

public int CalculateSize()

Returns

int

The number of bytes required to write this message to a coded output stream.

Clone()

Creates a deep clone of this object.

public CompatibleBuildIdRedirectRule Clone()

Returns

CompatibleBuildIdRedirectRule

A deep clone of this object.

Equals(object)

Determines whether the specified object is equal to the current object.

public override bool Equals(object other)

Parameters

other object

Returns

bool

true if the specified object is equal to the current object; otherwise, false.

Equals(CompatibleBuildIdRedirectRule)

Indicates whether the current object is equal to another object of the same type.

public bool Equals(CompatibleBuildIdRedirectRule other)

Parameters

other CompatibleBuildIdRedirectRule

An object to compare with this object.

Returns

bool

true if the current object is equal to the other parameter; otherwise, false.

GetHashCode()

Serves as the default hash function.

public override int GetHashCode()

Returns

int

A hash code for the current object.

MergeFrom(CodedInputStream)

Merges the data from the specified coded input stream with the current message.

public void MergeFrom(CodedInputStream input)

Parameters

input CodedInputStream

Remarks

See the user guide for precise merge semantics.

MergeFrom(CompatibleBuildIdRedirectRule)

Merges the given message into this one.

public void MergeFrom(CompatibleBuildIdRedirectRule other)

Parameters

other CompatibleBuildIdRedirectRule

Remarks

See the user guide for precise merge semantics.

ToString()

Returns a string that represents the current object.

public override string ToString()

Returns

string

A string that represents the current object.

WriteTo(CodedOutputStream)

Writes the data to the given coded output stream.

public void WriteTo(CodedOutputStream output)

Parameters

output CodedOutputStream

Coded output stream to write the data to. Must not be null.