Hot Upgrade Are Not Scary
summary
Explains how hot upgrades actually work with concrete files and commands: appup/relup files generated by distillery, the VM functions behind suspend load code change resume, and the need to set a module version and implement the code_change callback for gen_server state migrations (example converts Celsius state to Fahrenheit). Covers supervisor edits: child specs are additive so a custom distillery command is used to add or remove children, and warns about brief downtime for suspended, highly contended processes and the need for multi‑step deploys.
AI-written summary · about
chapters (13)
- 0:00Introduction and welcome
- 1:50What are hot upgrades
- 3:36Why consider hot upgrades
- 5:44When hot upgrades don't fit
- 6:26Simple upgrades without state changes
- 9:17How Erlang VM handles upgrades
- 13:08Migrating in-memory state
- 17:13Downtime and process suspension
- 19:19Database migrations vs code changes
- 21:30Changing supervision trees
- 26:30Multi-step deployment process
- 27:38Summary and next steps
- 31:52Q&A session








