8.4. Elastic DVM Plans
Implementation plans for dynamic DVM grow/shrink support.
- 8.4.1. Elastic DVM: Specification
- 8.4.2. Elastic DVM Implementation Plan
- 8.4.2.1. Step 1 — New state constant
- 8.4.2.2. Step 2 — New global fence and held-job arrays
- 8.4.2.3. Step 3 — Park jobs at the VM_READY → MAP boundary
- 8.4.2.4. Step 4 — Held-job release helpers
- 8.4.2.5. Step 5 — Completion-event emission (shared helper)
- 8.4.2.6. Summary of Files Changed (Shared Fence Infrastructure)
- 8.4.2.7. Design Invariants
- 8.4.3. DVM Grow-Campaign Fence Tracking
- 8.4.4. DVM Shrink-Campaign Fence Tracking
- 8.4.4.1. Background
- 8.4.4.2. Design Decision — Complete on Death, Not on Acknowledgement
- 8.4.4.3. Step 1 — Shrink campaign type, list, and fence increment
- 8.4.4.4. Step 2 — Daemon exit (no acknowledgement)
- 8.4.4.5. Step 3 — Second hold point at LAUNCH_APPS
- 8.4.4.6. Step 4 — Remap helpers
- 8.4.4.7. Step 5 — Detect target departure in the errmgr and notify completion
- 8.4.4.8. Reporting a release that killed running processes
- 8.4.4.9. Summary of Files Changed (Shrink Fence)
- 8.4.4.10. Design Invariants
- 8.4.4.11. Follow-up — collective shrink completion
- 8.4.5. Collective Shrink Completion — Repair the Routing Tree Once per Campaign
- 8.4.5.1. Background — the cost being removed
- 8.4.5.2. Design overview
- 8.4.5.3. Why this is not the rejected per-daemon ACK
- 8.4.5.4. Required revisions
- 8.4.5.5. Interaction with the grow rollback path
- 8.4.5.6. Design invariants preserved
- 8.4.5.7. Implementation status
- 8.4.5.8. Validation results
- 8.4.5.9. Open questions
- 8.4.5.10. Summary of files changed