Skip to content

Raise the managed mesh peer-outage grace from 4 s to 300 s - #259

Open
sethforprivacy wants to merge 1 commit into
FujitsuPolycom:mainfrom
sethforprivacy:mtp3-peer-outage-grace
Open

Raise the managed mesh peer-outage grace from 4 s to 300 s#259
sethforprivacy wants to merge 1 commit into
FujitsuPolycom:mainfrom
sethforprivacy:mtp3-peer-outage-grace

Conversation

@sethforprivacy

@sethforprivacy sethforprivacy commented Sep 10, 2026

Copy link
Copy Markdown
Contributor

Problem

PeerWatch.transport_error latches mesh_failure after 4 s without an
authenticated peer response. Peer health is fetched over the management
LAN
, not the ring fabric. Any management-switch event longer than 4 s (reboot,
firmware upgrade, STP reconvergence) therefore SIGKILLs a healthy model on all
four ranks while the RoCE ring is untouched, and with Restart=no the lane
stays down until an operator intervenes.

Live evidence (2026-09-09, four-rank GLM-5.3-Flash MTP3 mesh)

  • 07:56:47Z enP7s7: link down on all eight hosts on the LAN in the same second (switch reboot); link up 07:58:28Z (101 s).
  • 07:56:54Z all four ranks: {"event": "mesh_failure", "error": "Authenticated peer transport remained unavailable beyond its grace interval"} (rank 3: "Management address does not identify this rank").
  • 07:56:58Z docker kill -s 9 of every model container; API had returned /health 200 two seconds earlier. RoCE links ACTIVE, ring pings <1 ms throughout.
  • Lane down 5 h until manual up + start-model.

Change

PEER_OUTAGE_GRACE = 300.0. Test and MANAGED_MESH.md updated. Generation
changes, negative readiness, authentication failures and local marker exits
keep their no-grace semantics, so the invariant "never authenticated negative
readiness or a new generation" is unchanged; only the tolerance for a silent
peer grows. A silent peer already stalls the collective, so the longer grace
defers cleanup, not correctness.

Alternative considered: make it a site/profile knob. Happy to do that instead if
preferred; 300 s as a default still seems right for a LAN-carried health path.

PeerWatch.transport_error latched mesh_failure after 4 s without an
authenticated peer response. Peer health travels over the management LAN,
not the ring fabric, so any management-switch event longer than 4 s (a
reboot, firmware update or STP reconvergence) SIGKILLed a healthy model on
all four ranks while the RoCE ring was untouched; with Restart=no the lane
stayed down until an operator intervened. A 101 s switch reboot on
2026-09-09 did exactly that for 5 h.

Generation changes, negative readiness, authentication failures and local
marker exits keep their no-grace semantics; only the transport-unavailable
path waits 300 s. MANAGED_MESH.md and the unit test are updated.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant