Add run_config_upgrade_wal_trim_round() / --config-upgrade-wal-trim to run-ha-soak.sh: forces real WAL segment rotation via small --wal-segment-bytes, kills a non-primary node, drives a live config upgrade to fire the marker-triggered checkpoint's forced trim, then inspects survivors' on-disk WAL directory before the killed node rejoins to directly verify the mid-catch-up retention guard (repl_trim_lsn/trim_wal_segments, bug-1147) preserves what it still needs. Two independent live 3-node runs both reproduce a real, pre-existing, out-of-spec-boundary defect (bug-1474): a heartbeat reconnect-sweep race reuses a just-killed standby's freed replicator slot and clobbers its retention guard before trim ever runs. Root-caused via repl.c/ha.c and confirmed via git blame to predate this spec and be reachable under the old periodic-checkpoint trigger identically -- not caused by anything config-upgrade-snapshot changed. Task 8.9 stays blocked per tasks.md until bug-1474 is fixed upstream; infra is done and correctly proves the violation. Independently reviewed: round design verified faithful to the unit-level fixture, bug-1474 diagnosis independently re-derived from source and raw logs (not trusted from the implementer's report). |
||
|---|---|---|
| .. | ||
| settings | ||
| specs | ||
| steering | ||