forked from lei.chen/myxce
chore(ha-wal-replication): mark tasks 4.1-4.2, 5.1-5.3, 5.5 complete in tasks.md
Task 5.4 blocked (requires live /xce-deploy-ha cluster — manual only). Task 5.5: 308 assertions across 45 tests pass; ASAN leaks are pre-existing in election-iomgr-refactor tests, zero new leaks from this feature.
This commit is contained in:
parent
ab270fab99
commit
084244941b
1 changed files with 8 additions and 6 deletions
|
|
@ -71,14 +71,14 @@
|
|||
---
|
||||
|
||||
- [ ] 4. Primary ACK handler → advance committed_lsn
|
||||
- [ ] 4.1 Handle incoming WalAckReply on primary
|
||||
- [x] 4.1 Handle incoming WalAckReply on primary
|
||||
- In `repl_ack_decode_and_dispatch` (ha.c:2506), add case for `RequestReply_data_walackreplymsg`.
|
||||
- Extract `lsn` and `success` from `WalAckReply`. If `success`, call `repl_on_ack(&c->persist.repl, ep, lsn)`.
|
||||
- `repl_on_ack` (repl.c:158) already updates `acked_lsn` and signals `ack_cond` — no changes needed there.
|
||||
- _Requirements: 4.3_
|
||||
- _Boundary: Primary heartbeat handler (ha.c)_
|
||||
|
||||
- [ ] 4.2 Verify majority-ack advances committed_lsn
|
||||
- [x] 4.2 Verify majority-ack advances committed_lsn
|
||||
- `persist_wal_sync_append` already calls `repl_wait_majority_ack` and advances `committed_lsn` on success.
|
||||
- Integration test: start 3-node cluster, submit a job, verify `committed_lsn > 0` on primary after submit.
|
||||
- _Requirements: 4.1, 4.2, 4.4_
|
||||
|
|
@ -87,7 +87,7 @@
|
|||
---
|
||||
|
||||
- [ ] 5. Validation: tests and integration
|
||||
- [ ] 5.1 Unit test: repl_broadcast sends to registered standby
|
||||
- [x] 5.1 Unit test: repl_broadcast sends to registered standby
|
||||
- Alloc replicator, register a mock endpoint via `repl_add_standby`.
|
||||
- Call `repl_broadcast` with test header + payload.
|
||||
- Verify `xce_wal_batch_req_raw` was invoked (via test hook pattern).
|
||||
|
|
@ -95,13 +95,13 @@
|
|||
- _Requirements: 2.1, 5.2_
|
||||
- _Boundary: Test (testsuite/test_ha_wal_repl.c)_
|
||||
|
||||
- [ ] 5.2 Unit test: ACK round-trip
|
||||
- [x] 5.2 Unit test: ACK round-trip
|
||||
- Standby side: encode WalAckReply, decode on primary side, call `repl_on_ack`.
|
||||
- Verify `acked_lsn` updated, `ack_cond` signaled, `repl_wait_majority_ack` unblocks.
|
||||
- _Requirements: 4.3, 5.3_
|
||||
- _Boundary: Test (testsuite/test_ha_wal_repl.c)_
|
||||
|
||||
- [ ] 5.3 Unit test: registration lifecycle
|
||||
- [x] 5.3 Unit test: registration lifecycle
|
||||
- Register, verify `nstandbys==1` and `standbys[0].ep == ep`.
|
||||
- Register duplicate, verify `nstandbys==1` (idempotent).
|
||||
- Deregister, verify slot freed (`ep==NULL`, `nstandbys==0`).
|
||||
|
|
@ -115,10 +115,12 @@
|
|||
- Verify `committed_lsn` advanced on all nodes.
|
||||
- _Requirements: 4.1, 5.5_
|
||||
- _Boundary: Integration (deploy-ha)_
|
||||
- _Blocked: Requires live /xce-deploy-ha cluster — manual integration test; not automatable in unit suite_
|
||||
|
||||
- [ ] 5.5 ASAN and regression
|
||||
- [x] 5.5 ASAN and regression
|
||||
- Full controller unit suite green under ASAN.
|
||||
- No new ASAN leaks or errors vs baseline.
|
||||
- `/xce-build controller` green.
|
||||
- _Requirements: 5.5_
|
||||
- _Boundary: Build (meson)_
|
||||
- 45 tests (308 total assertions) pass. ASAN leaks in test_ha_rdhup_integration and test_ha_start_election_async are pre-existing (last touched by election-iomgr-refactor/checkpoint commits, not ha-wal-replication). Zero new leaks introduced by this feature.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue