Skip to content
Settings

cyoda scheduled-transition scheduler configuration

cyoda-go version 0.8.3

config.scheduler — scan-loop cadence, coordinator/distribution strategy, and expiry-grace env vars for the scheduled-transition runtime.

  • CYODA_SCHEDULER_ENABLED (bool, default: true) — kill switch for the coordinator scan loop.
  • CYODA_SCHEDULER_SCAN_INTERVAL (duration, default: 1s) — coordinator scan cadence.
  • CYODA_SCHEDULER_BATCH_SIZE (int, default: 100) — max due tasks pulled per scan.
  • CYODA_SCHEDULER_DISTRIBUTION (string, default: round-robin) — dispatch-target selection strategy: round-robin or self. Forced to self whenever CYODA_CLUSTER_ENABLED=false.
  • CYODA_SCHEDULER_COORDINATOR (string, default: lowest-node-id) — coordinator-election strategy; the member with the lexicographically smallest node ID scans on each tick.
  • CYODA_SCHEDULER_REDISPATCH_BACKOFF (duration, default: 30s) — best-effort re-dispatch throttle window applied to a task once it is picked up, so the same due task isn’t immediately re-dispatched on the next scan.
  • CYODA_SCHEDULER_EXPIRY_GRACE (duration, default: 100ms) — grace band above a scheduled transition’s timeoutMs before it is expired instead of fired late; size to at least the maximum expected inter-node clock skew.
  • config
  • config.cluster
  • run
  • cyoda help config — Environment variables beat default values. The _FILE suffix variant takes precedence over the plain variable when both are set — for example, CYODA_POSTGRES_URL_FILE=/etc/secrets/db-url wins over CYODA_POSTGRES_URL. There are no command-line flags for configuration values; env vars are the sole configuration surface.
  • cyoda help config cluster — - CYODA_CLUSTER_ENABLED (bool, default: false) — enable multi-node clustering.
  • CYODA_NODE_ID (string, default: unset) — unique node identifier; required when CYODA_CLUSTER_ENABLED=true; any non-empty string is accepted.
  • CYODA_NODE_ADDR (string, default: http://localhost:8080) — this node’s HTTP base URL; must include scheme (http:// or https://).
  • CYODA_GRPC_NODE_ADDR (string, default: unset) — this node’s gRPC endpoint advertised to peers (host:port, no scheme). When set, peers dial this address for cross-node gRPC callback forwarding. When unset, peers derive the gRPC address from this node’s HTTP host plus their own CYODA_GRPC_PORT (uniform-deployment default).
  • CYODA_GOSSIP_ADDR (string, default: :7946) — gossip protocol listen address; format [host]:port — parsed via net.SplitHostPort; invalid format causes startup failure.
  • CYODA_GOSSIP_STABILITY_WINDOW (duration, default: 2s) — gossip stability window.
  • CYODA_SEED_NODES (string, default: empty) — comma-separated list of seed node addresses (e.g., node1.example.com:7946,node2.example.com:7946); empty means single-node or seed-discovery handled externally.
  • CYODA_HMAC_SECRET (string, default: unset) — hex-encoded HMAC secret for inter-node dispatch authentication; required when CYODA_CLUSTER_ENABLED=true. Supports _FILE suffix.
  • CYODA_PROXY_TIMEOUT (duration, default: 30s) — request proxy timeout.
  • CYODA_DISPATCH_WAIT_TIMEOUT (duration, default: 5s) — how long the dispatcher polls gossip for a compute member with matching tags.
  • CYODA_DISPATCH_FORWARD_TIMEOUT (duration, default: 30s) — HTTP timeout for the cross-node forwarding call.
  • CYODA_TX_TOKEN_TTL (duration, default: 90s) — TTL of the signed transaction routing token minted on processor/criteria dispatch; must be ≥ CYODA_DISPATCH_FORWARD_TIMEOUT so the token remains valid through the full round-trip and callback verification, including the forwarded-chain case where two budgets stack.
  • CYODA_KEEPALIVE_INTERVAL (int, default: 10) — keep-alive send interval in seconds.
  • CYODA_KEEPALIVE_TIMEOUT (int, default: 30) — keep-alive timeout in seconds.
  • cyoda help run — cyoda-go is a single-process, multi-tenant REST and gRPC API server. It starts in serving mode when invoked with no subcommand. All configuration is via environment variables with a CYODA_ prefix. The binary, Docker image, and Helm chart run the same binary; only the environment configuration differs across run modes.