Can your database do this? Ep 3: Zero-downtime, type-safe migrations
Blog post from Convex
Jamie Turner describes how he enhanced his "Fancy Movie Database," built on the Convex platform, by implementing a zero-downtime migration to incorporate Roman numerals for copyright years. Initially, he encountered type errors when attempting to change the year from a number to a string, which prompted him to introduce a new field called "fancy year" that could store the Roman numeral representation. The migration process involved using Convex's migrations component, which allowed him to backfill the "fancy year" field for all existing records without disrupting the live application. This was accomplished through an asynchronous function that transformed each record by converting the year into Roman numerals using an npm package. Finally, after running the migration, Turner confirmed that all records were updated successfully, demonstrating how the Convex platform facilitates smooth and type-safe database migrations, offering a comprehensive solution for full-stack development.