The deployment strategy debate usually skips the only hard part, which is that your data has one version regardless of how many versions of the code are running.
Expand and contract
Any strategy where two versions coexist requires schema changes to be backwards compatible for at least one release. Add the column, deploy code that writes both, backfill, deploy code that reads the new one, then remove the old. Four deploys to rename a column feels absurd until the first time you try it in one and take the service down.
Choosing
- Blue-green gives you a fast, complete rollback and needs double the capacity for a while.
- Canary limits blast radius and needs enough traffic for the metrics to mean anything. Below a few hundred requests a minute you are reading noise.
Whichever you pick, decide the rollback criteria before you deploy. Judgement at two in the morning is not a strategy.



Tags:
1 Comments
Leave a comment
Sign in to leave a comment.
Signing in is unavailable right now.







Peter Bakker
May 13, 2025Four deploys to rename a column is the line I will be quoting to my team this week.