Engine and storage settings
Every engine and storage settings field served by the server configuration types.
Listeners
-
server.listen_address - HTTP and WebSocket listener. Default 127.0.0.1:8080.
-
server.grpc_addresses - Nonempty list of unique, nonzero-port gRPC listeners. Default [127.0.0.1:50051]. The first is the primary control endpoint.
-
server.cors_allowed_origins - Exact HTTP origins, with no path or trailing slash. Default empty: same-origin access only; no wildcard.
Store
-
store.backend - haematite (durable, default) or memory (ephemeral; loses state at shutdown).
-
store.owned_shards - Static shard assignment. Empty means this node owns all shards. Meaningful for haematite, not memory.
-
store.data_dir - Haematite data directory. The merged config defaults it under Aion home. Existing data is reopened; a fresh directory creates a database.
-
store.shard_count - Number of haematite shards to create on a fresh database. Defaults to 64.
-
store.cluster - Optional cluster membership. Omit for single-node storage. Requires haematite.
-
store.node_cache_budget - Required for haematite. Use an object with a positive bytes integer, or the explicit string unlimited. File boot healing supplies unlimited when missing; a constructed config must provide it.
-
store.lock_acquisition_patience_ms - Retired. Warned and ignored; the server waits for the kernel writer lock and reports the holder.
-
store.lock_acquisition_retry_cadence_ms - Retired. Warned and ignored; the kernel lock controls acquisition.
Cluster
-
store.cluster.node_id - Required unique distribution node name.
-
store.cluster.bind_address - Required replication and quorum listener address.
-
store.cluster.members - Complete quorum membership by node id. An empty list means this node alone. Do not replace full membership with only reachable peers.
-
store.cluster.peers - Peer connection entries. Each gives its name, replication endpoint, optional gRPC endpoint and owned shards.
-
store.cluster.failover_poll_interval_ms - Peer liveness cadence in milliseconds. Default 500.
-
store.cluster.failover_confirmations - Consecutive disconnected observations before adoption. Positive integer; default 3.
-
store.cluster.cancel_relay_backoff_base_ms - Required positive first-retry delay for relaying a remote descendant cancellation. No default.
-
store.cluster.cancel_relay_backoff_multiplier - Required retry growth factor, at least one. No default.
-
store.cluster.cancel_relay_backoff_max_ms - Required delay ceiling, at least the base delay. No default.
Peer entries
-
store.cluster.peers.name - Required peer node name, matching its configured node id.
-
store.cluster.peers.address - Required peer replication endpoint.
-
store.cluster.peers.grpc_address - Optional peer client API endpoint for forwarding. Without it an incorrectly addressed request returns NotOwner.
-
store.cluster.peers.owned_shards - Shards assigned to this peer. Automatic adoption requires these to be declared.
Runtime
-
runtime.scheduler_threads - Positive engine scheduler thread count. Default 1.
-
runtime.jit_threshold - Optional positive compilation threshold. When absent, beamr chooses its own default. A large value defers compilation; it does not disable it.
-
runtime.query_timeout_ms - Positive query reply deadline in milliseconds. Merged default 10000; zero is refused.
-
runtime.workloop_sweep_interval_ms - Positive workloop sweep interval in milliseconds. Merged default 1000. It contributes to health-alarm detection latency.
-
runtime.stop_drain_timeout_ms - Positive no-progress bound while stopping engine workers. Merged default 30000 ms. Each progress report resets the bound.
Drain
-
drain.timeout_seconds - Positive graceful transport drain window. Default 30 seconds.
Namespaces
-
namespaces.default - Default namespace name. Default default.
-
namespaces.auto_create - open (default) allows an unseen namespace to be created during worker registration or workflow start; closed requires explicit creation through POST /namespaces.
-
namespaces.max_in_flight_activities - Default 1024. Caps claimed outbox rows only when outbox.enabled=true, for parallel/collect members. Ordinary single activity calls bypass it. The typed outbox default is false; the first-run template enables it. A successful worker handoff marks the row done while its handler may still execute, so running handlers can exceed this claim ceiling. Cluster nodes receive a rounded owned-shard share.
Resolver
-
namespace.mode - SharedEngine by default. SingleTenant carries one explicitly named namespace.
Read configuration discovery and the starter file.