Durable Workflow PHP SDK — API Reference

Guides

ServerCapabilityUnavailable extends ServerException
in package

FinalYes

The connected Server has no route for an additive capability the call needs.

Raised with status 501 and reason backend_capability_unavailable when an older Server answers a capability's route with a plain 404. Nothing was read or changed. capability names the cluster info capability to check before offering the call, and details carries the Server's original status and answer. The original error is kept as the previous exception.

Table of Contents

Properties

$capability  : string
$details  : array<string|int, mixed>|null
$reason  : string|null
$status  : int

Methods

__construct()  : mixed
fromMissingRoute()  : self
isActivityCompletionPayloadDiscoveryUnavailable()  : bool
Discovery failed before any activity-completion request was submitted.
isActivityTaskBackendUnavailable()  : bool
A backend failure whose activity completion can be retried with the same attempt and lease.
isMissingRoute()  : bool
A plain route 404 means the Server predates the capability. A 404 with any other reason, such as `namespace_not_found`, is the Server's own answer and is kept as it is.
isStorageAdmissionFailure()  : bool
Whether the Server explicitly refused admission and requested a same-identity retry.
isTransientConnectionFailure()  : bool
isTransientUpstreamFailure()  : bool
A temporary upstream HTTP failure without a Server protocol envelope.
isWorkflowTaskBackendUnavailable()  : bool
A backend failure whose workflow-task mutation can be retried with the same lease fence.
isWorkflowTaskCompletionDeferred()  : bool
A completion explicitly deferred before commit, under the original lease.
isWorkflowTaskCompletionPublicationDeferred()  : bool
A committed completion whose publication needs same-fence reconciliation.

Properties

Methods

__construct()

public __construct(string $capability, string $message[, array<string, mixed> $details = [] ][, Throwable|null $previous = null ]) : mixed
Parameters
$capability : string
$message : string
$details : array<string, mixed> = []
$previous : Throwable|null = null

isActivityCompletionPayloadDiscoveryUnavailable()

Discovery failed before any activity-completion request was submitted.

public isActivityCompletionPayloadDiscoveryUnavailable(string $taskId, string $attemptId, string $leaseOwner) : bool
Parameters
$taskId : string
$attemptId : string
$leaseOwner : string
Return values
bool

isActivityTaskBackendUnavailable()

A backend failure whose activity completion can be retried with the same attempt and lease.

public isActivityTaskBackendUnavailable(string $taskId, string $attemptId, string $leaseOwner) : bool
Parameters
$taskId : string
$attemptId : string
$leaseOwner : string
Return values
bool

isMissingRoute()

A plain route 404 means the Server predates the capability. A 404 with any other reason, such as `namespace_not_found`, is the Server's own answer and is kept as it is.

public static isMissingRoute(ServerException $exception) : bool
Parameters
$exception : ServerException
Return values
bool

isStorageAdmissionFailure()

Whether the Server explicitly refused admission and requested a same-identity retry.

public isStorageAdmissionFailure([string|null $pollRequestId = null ]) : bool
Parameters
$pollRequestId : string|null = null
Return values
bool

isTransientConnectionFailure()

public isTransientConnectionFailure() : bool
Return values
bool

isTransientUpstreamFailure()

A temporary upstream HTTP failure without a Server protocol envelope.

public isTransientUpstreamFailure() : bool
Return values
bool

isWorkflowTaskBackendUnavailable()

A backend failure whose workflow-task mutation can be retried with the same lease fence.

public isWorkflowTaskBackendUnavailable(string $taskId, string $leaseOwner, int $attempt[, string $operation = 'heartbeat_workflow_task' ]) : bool
Parameters
$taskId : string
$leaseOwner : string
$attempt : int
$operation : string = 'heartbeat_workflow_task'
Return values
bool

isWorkflowTaskCompletionDeferred()

A completion explicitly deferred before commit, under the original lease.

public isWorkflowTaskCompletionDeferred(string $taskId, string $leaseOwner, int $attempt) : bool
Parameters
$taskId : string
$leaseOwner : string
$attempt : int
Return values
bool

isWorkflowTaskCompletionPublicationDeferred()

A committed completion whose publication needs same-fence reconciliation.

public isWorkflowTaskCompletionPublicationDeferred(string $taskId, string $leaseOwner, int $attempt) : bool
Parameters
$taskId : string
$leaseOwner : string
$attempt : int
Return values
bool
On this page

Search results