SubscriptionProperties
How the node's subscriptions run, retry their failures and park what keeps failing.
Properties
How a handler whose downstream pushes back is retried, and its partition throttled.
How often each subscription saves its checkpoint; a stop saves it too.
The partitions the node reads behind their head at once, all its subscriptions together; 0 for no bound. A partition whose subscriptions start behind the head (a history migrate-data imported, a long stop) waits for one, and the others stand at their checkpoints, so the node keeps its store for its commands while it catches up. More do not catch up sooner on one store, and raise the latency of the commands meanwhile.
The entries one subscription may hold in one partition between its checkpoint and the last entry it took: it bounds both memory and what a crash replays.
How the parked entries are retried automatically, over minutes and hours.
How a failing read of the log, or write of a store, is retried: until the node stops, the backoff growing for error-after (5) attempts, after which each failure is logged as an error and retried at max-backoff, so a long outage does not stop the subscription.
How a failing handler is retried in process before its aggregate is parked; a subscription's wow.subscriptions.[<context>.<name>].retry.* and its handler's @Retry come before it.
How long a stop waits for the handlers in flight before abandoning them; an abandoned entry is handled again after the restart.
When a partition pauses on a systemic failure, such as a database that is down, instead of parking every aggregate that fails.
Functions
These options, with the starts, the parked retry specs and the retry budgets subscriptions configure.