The migration script failed, and the database stood still. A single missing new column stopped the deploy.
Adding a new column is one of the most common schema changes, but it is also one of the easiest places to break production. The operation seems simple: ALTER TABLE ADD COLUMN. In practice, it can lock rows, block queries, and cause downtime if executed without care.
A new column affects schema storage, query plans, and indexes. On large tables, adding it can rewrite the entire dataset. This is why many teams run migrations during off-peak hours, split changes into multiple steps, and avoid default values that force a table rewrite.
The safest approach is to run schema changes with tools that manage locks and parallelize updates. Adding a nullable column first, then backfilling data in small batches, keeps the table responsive. When needed, create an index after data population to prevent unnecessary index maintenance overhead.