feat(ha-config-bootstrap): implement committed_config_tag and config quorum commit (task 8.1)
This commit is contained in:
parent
684d3b6608
commit
c0cfc1cf83
3 changed files with 20 additions and 3 deletions
|
|
@ -189,7 +189,7 @@ Dependency order: startup validation (D) unblocks vtaskmgr before election (A);
|
|||
- _Boundary: Persistence Layer (persist.c), Replication Layer (repl.c)_
|
||||
|
||||
- [ ] 8. Change H: Majority-commit config replication (P)
|
||||
- [ ] 8.1 Implement OP_upgradeConfigAck handler and committed_config_tag
|
||||
- [x] 8.1 Implement OP_upgradeConfigAck handler and committed_config_tag
|
||||
- Add `committed_config_tag` field to cluster config state (ha_state_t via `last_known_committed_config_tag`); piggybacked on `CtrlHeartbeat` via `committedConfigTag`
|
||||
- Standby handler for `OP_upgradeConfig`: write config blob locally + reply `OP_upgradeConfigAck` with `ackedTag`
|
||||
- `push_config_to_standbys()` upgraded: write locally → `repl_broadcast(c, OP_upgradeConfig, blob, len)` → `repl_wait_majority_ack(c, commit_timeout_ms, OP_upgradeConfigAck)` → on quorum `atomic_store(&committed_config_tag, tag)` → return; on timeout return `-ETIMEDOUT`
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue