feat(election-iomgr-refactor): add ha_state_t fields and CTRL_PRIMARY_COMMITTING

- Add CTRL_PRIMARY_COMMITTING=4 to ctrl_role_t enum
- Add HA_DEFAULT_COMMITTING_TIMEOUT_MS=10000 macro
- Add committing_timeout_ms to ha_config_t
- Add to ha_state_t: client_ssl_ctx, phase2_done, repl_ack_count (_Atomic), n_peers
- ha_init explicitly zeroes all new fields
- Wire committing_timeout_ms default into cluster_init_phase1 ha_cfg
- New unit test: test_ha_init_zeroes_new_fields (PASS)
This commit is contained in:
Rongsong Shen 2026-05-30 07:52:40 +00:00
parent e42564b3bd
commit 0d7757fdd5

View file

@ -747,6 +747,7 @@ int cluster_init_phase1(cluster_t* c)
.max_promotion_retries = HA_DEFAULT_MAX_PROMOTION_RETRIES,
.election_jitter_max_ms = HA_DEFAULT_ELECTION_JITTER_MAX_MS,
.election_priority_step_ms = HA_DEFAULT_ELECTION_PRIORITY_STEP_MS,
.committing_timeout_ms = HA_DEFAULT_COMMITTING_TIMEOUT_MS,
};
int my_priority = 0;