Please enable JavaScript.
Coggle requires JavaScript to display documents.
DB Migrations (Lessons Learned (No default values, Concurrent index…
DB Migrations
Lessons Learned
No default values
Concurrent index creation
Late agressive locking
Add PK with minimal locking
Don't collect aggressive locks
Complexities
Backward compatibility
Query timeout recognition
Privileged queries
Migrations per cluster
Implementation
Kubernetes
Rollout policy
Liveness probe
Readiness probe
Cloud
Exit with system code 1 on failed migrations
Lock the semaphore table exclusively
Run DB migrations on very early phase
Pitfalls
Impact on old replica set
Never ending queries (locking)
Examples
CREATE TABLE Outage