feat(config-upgrade-snapshot): remove restart/replay fallback, marker-trigger materializes alone
do_upgrade_config_with_bytes drops step 9 (wait-for-checkpoint, restart_requested=1, cbuf_put stop signal) -- materialization now happens entirely via task 5's apply_committed_entry WAL_CONFIG_MARKER case on every member's own apply, no restart required. Confirmed do_upgrade_config_with_bytes was the sole production setter of restart_requested; cluster.c's read of it is now permanently false-for-this-trigger, which is the intended behavior. Adds xce_upgrade_marker_committed_hook (#ifdef XCE_TESTING, mirrors xce_snapshot_chunk_hook's nullable-function-pointer shape), firing right after config_commit_change succeeds -- a deterministic seam for later leadership-change fault injection (task 8.7) at exactly the marker-commit-to-every-member-installed window. NULL by default, true no-op in production. Task 7 of 19. Requirements: 1.2, 1.3, 1.4, 2.2, 5.4, 6.3
This commit is contained in:
parent
89b85e1680
commit
41af05402d
3 changed files with 135 additions and 46 deletions
|
|
@ -70,7 +70,7 @@
|
|||
- _Requirements: 3.1, 3.2, 3.3, 3.4, 4.3, 5.5_
|
||||
- _Depends: 6.1_
|
||||
|
||||
- [ ] 7. Remove the per-node restart/replay fallback and replace it with the marker-triggered materialization
|
||||
- [x] 7. Remove the per-node restart/replay fallback and replace it with the marker-triggered materialization
|
||||
- Delete the configuration-upgrade handler's restart-request step now that materialization is driven entirely by the marker-apply trigger, decoupled from that request-handling code path
|
||||
- Add a deterministic test seam that can force a leadership change to land exactly between a configuration-change marker's commit and every member completing its snapshot install, for later regression use
|
||||
- Observable: pushing a configuration upgrade no longer restarts any controller process, and every member reaches the new configuration through the marker-apply trigger alone
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue