Taking down production with simple database migrations
Learning the hard way how not to take down your entire production service, again, and again, and again
Tuesday 18th, 14:30 (Ferrier Hall)
Tuesday 18th, 12:30 (Ferrier Hall)
Migrating databases can't be that hard right? Change some fields, auto-generate the migration files, and deploy. Bam - you're do- Why is literally everything suddenly giving errors... Wait- why is everything back to normal now by itself...
When you're small you write a monolithic application because it is efficient to do so. However, as your application becomes larger in every way, certain things can start becoming much more difficult, in particular, modifying your database schema via your models or fields becomes hazardous.
This talk will look at the various ways that I, or someone on my team, took down our entire production web service with some kind of - perfectly innocent-looking - database migration. We gradually accumulated a set of best practices and wrote a comprehensive manual on how to do them right.