Download Latest Version V9.20.1 source code.zip (20.1 MB)
Email in envelope

Get an email when there's a new version of Marten

Home / V9.17.0
Name Modified Size InfoDownloads / Week
Parent folder
README.md 2026-07-20 1.3 kB
V9.17.0 source code.tar.gz 2026-07-20 18.3 MB
V9.17.0 source code.zip 2026-07-20 20.0 MB
Totals: 3 Items   38.2 MB 0

High-water health check: opt-in autoRestart + heartbeat primary signal (#4986)

Builds on the detection-only check from 9.16 (#4984). Requires JasperFx 2.32.0 (jasperfx#539), which this release rolls up to (#4987).

  • Opt-in autoRestartAddMartenHighWaterHealthCheck(TimeSpan? staleThreshold = null, long minimumGap = 1, bool autoRestart = false). When the check is Unhealthy and autoRestart is on, it asks the local projection coordinator's daemon to restart the high-water agent's poll loop only — the mark is never advanced — capped to once per staleness window per database. The cycle is still reported Unhealthy so an alert still fires. Intended for Solo / leader nodes.
  • Heartbeat is now the primary staleness signal — when EnableExtendedProgressionTracking is on, the high-water agent stamps a liveness heartbeat on the HighWaterMark row every poll cycle. Heartbeat age proves the loop is cycling independent of whether the mark advances, so a quiet store is never a false positive, and a dead agent is caught even when projections are fully caught up (the exact [#4961] blind spot). The original sequence-gap heuristic is retained as the ExtendedProgression-off fallback.

Full changelog: https://github.com/JasperFx/marten/compare/V9.16.1...V9.17.0

Source: README.md, updated 2026-07-20