feat(ha-repl-hardening): committing timeout 60s degraded-mode safety net (task 5.3)

- Change HA_DEFAULT_COMMITTING_TIMEOUT_MS from 10000 to 60000
- committing_timeout_fn: count converged/pending standbys from
  standby_converged[], log WARN with counts, then promote (degraded mode)
- Replace hardcoded 10000 in test_ha_evaluate_committing.c with macro
- Three new tests: default=60000, degrade-promote with 1/2 and 0/2 converged
This commit is contained in:
Rongsong Shen 2026-06-05 05:03:40 +00:00
parent 534bfd68fe
commit 0762577bf7
5 changed files with 160 additions and 9 deletions

View file

@ -60,7 +60,7 @@ static ha_config_t g_cfg = {
.max_promotion_retries = 5,
.election_jitter_max_ms = 0,
.election_priority_step_ms = 500,
.committing_timeout_ms = 10000,
.committing_timeout_ms = HA_DEFAULT_COMMITTING_TIMEOUT_MS,
};
/* ── Helper: build a minimal ha_elect_ctx_t for n_other peers ───────────── */