The migration froze halfway. A missing new column in the database blocked the deploy, and the clock was ticking.
Adding a new column is simple in theory. In practice, it can break production if handled without care. The right approach starts with understanding the schema, the indexes, and the way your application reads and writes data.
First, define the new column explicitly. Decide the data type, default value, and constraints. Avoid NULL defaults unless intentional, as they can cause hard-to-trace bugs. Use migrations to add the new column so it is version-controlled and reversible.
Second, consider the performance impact. Adding a column to a large table can lock writes and slow reads. For high-traffic systems, run the migration in batches or during maintenance windows. If your database supports it, use online DDL to prevent downtime.