Durable Workflow PHP SDK — API Reference

Guides

ScheduleAlreadyExists extends ServerException
in package

FinalYes

The Server refused to create a schedule because its id is taken (409 schedule_already_exists).

Schedule ids are never reused, including after a delete or after max_runs runs out. Deploy tooling that applies schedules from configuration can catch this and update the existing schedule instead. Status, reason and details are kept from the Server's answer.

Table of Contents

Properties

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

Methods

__construct()  : mixed
fromServerException()  : 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.
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|null $scheduleId, string $message, int $status, string|null $reason, array<string, mixed>|array<int, mixed>|null $details[, Throwable|null $previous = null ]) : mixed
Parameters
$scheduleId : string|null
$message : string
$status : int
$reason : string|null
$details : array<string, mixed>|array<int, mixed>|null
$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

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