Skip to content
Settings

DISPATCH_TIMEOUT — dispatch to compute member timed out

cyoda-go version 0.8.4

DISPATCH_TIMEOUT — the dispatcher waited longer than the configured timeout for a compute member to accept and complete a task.

HTTP: 503 Service Unavailable.

A workflow processor, criteria evaluation, or function callout was dispatched to a compute member but the response did not arrive within the callout’s own responseTimeoutMs (a field on the processor, criteria, or function config; default 30000 ms) — not any cluster forwarding timeout.

The error message names which of two phases timed out:

  • member not draining — the compute member had stopped reading its stream, so the request could not even be handed to it.
  • no response — the member took the request but did not answer in time.

A member that is not draining is evicted within CYODA_KEEPALIVE_TIMEOUT seconds; dispatches to it after that return errors.COMPUTE_MEMBER_DISCONNECTED and route to another member instead.

Retryable. Completion on the remote node is not guaranteed; retries must be idempotent or carry an idempotency key.

If timeouts recur, check compute member load and network latency. CYODA_DISPATCH_WAIT_TIMEOUT and CYODA_DISPATCH_FORWARD_TIMEOUT govern cross-node forwarding between cluster nodes, not this timeout — see cyoda help config cluster.

  • errors
  • errors.DISPATCH_FORWARD_FAILED
  • errors.NO_COMPUTE_MEMBER_FOR_TAG
  • errors.COMPUTE_MEMBER_DISCONNECTED
  • grpc
  • cyoda help errors — Every error response from the Cyoda REST API carries a structured errorCode in the properties object. Multiple codes may share the same HTTP status. Programmatic handling keys on errorCode, not HTTP status.
  • cyoda help errors DISPATCH_FORWARD_FAILED — The cluster dispatcher attempted to forward a processor invocation or criteria evaluation to a peer node but the HTTP call to that peer failed (network error, peer crash, or connection refused). The operation has not been executed on the target node.
  • cyoda help errors NO_COMPUTE_MEMBER_FOR_TAG — Workflow processors are dispatched to nodes that advertise matching compute tags. When no node with the required tag is alive in the cluster within the configured wait timeout (CYODA_DISPATCH_WAIT_TIMEOUT), the operation is rejected with this error.
  • cyoda help errors COMPUTE_MEMBER_DISCONNECTED — The compute member responsible for executing a processor or workflow step disconnected before completing the operation. The task may or may not have been executed.
  • cyoda help grpc — cyoda-go exposes one gRPC service: CloudEventsService (package org.cyoda.cloud.api.grpc). All gRPC methods use the CloudEvents Protobuf envelope (io.cloudevents.v1.CloudEvent) as both request and response types. The event type string in the CloudEvent envelope selects the operation; the JSON payload in text_data (or binary_data) carries the operation-specific body.