Database Migration Under CD
Expand-contract, backwards-compatible schema change, and migrations that cannot roll back.
6 to work through
-
intermediate
A release must rename a heavily used database column and ships tonight. The team proposes doing the rename in the deployment. What is wrong, and what do you propose?
2 min answer -
intermediate Multiple choice
A superapp in the mould of Grab renames a column using expand and contract. The rolling deploy of the 240-pod service takes 11 minutes. A batch consumer reads a cached schema descriptor with a 1-hour TTL. A worker fleet is draining a 6-hour backlog of jobs serialised against the old shape. Mobile clients hold the old field name until users update. Roughly how long must both shapes stay correct before the contract step is safe?
3 min answer -
intermediate
A team deploys several times a day and needs to change a database schema. What sequence prevents downtime, and which step is skipped?
2 min answer -
advanced
A platform gates schema changes through a reviewable, revertible "deploy request" rather than allowing direct DDL. What does this buy, and what must the mechanism provide?
2 min answer -
advanced
A team deploys many times a day and must change the database schema. What discipline makes this safe?
2 min answer -
advanced Multiple choice
You deploy at 14:00. At 14:20 error rates spike. The release included a migration that dropped a column. What do you do, and what should have been different?
2 min answer
1 term in this topic
Neighbouring topics
Delivery & Release Engineering
General material on getting a change from commit to production safely and often.
Pipeline Architecture
Stages, fan-out, caching, and the difference between a pipeline and a long script.
Build Reproducibility
Pinned inputs and hermetic builds, so one commit cannot produce two different artifacts.
Artifact Management
Immutable versioned outputs, promotion between repositories, and retention policy.
Environment Strategy
How many environments earn their cost, what each proves, and what none of them prove.
Branching Models
GitFlow, trunk and release branches as delivery constraints rather than Git preferences.
Continuous Integration Discipline
Integrating to the mainline daily, and the test speed and review culture that requires.
Deployment Strategies
Rolling, blue-green, canary and shadow, and the traffic and state each one assumes.
Progressive Delivery
Separating deploy from release, and exposing a change to users in controlled increments.
Rollback & Forward Fix
When reversing is genuinely possible, and designing so that it usually is.
GitOps
Declared desired state in version control, with a reconciler closing the gap continuously.
IaC Modules & Drift
Reusable infrastructure modules, state ownership, and detecting what changed out of band.
Policy as Code
Encoding standards as automated admission and plan-time checks instead of review comments.
Pipeline Secrets
Short-lived credentials, workload identity, and why the CI system is a prime target.
Supply-Chain Provenance
SBOMs, signed artifacts, attestation, and knowing what actually went into a build.
Deployment Gates
Automated verification between stages, and the difference between a gate and a delay.
Flow Metrics
Work in progress, flow time and flow efficiency — where a change waits rather than moves.
Change Management vs CD
Reconciling CAB-era controls with continuous delivery without pretending either away.
Multi-Region Rollout
Ordering regions, bake time, and stopping a bad change before it becomes global.