From 29a953c038446b298c94e4878ba9243b1a1383c8 Mon Sep 17 00:00:00 2001 From: carla Date: Wed, 7 Jan 2026 09:52:40 +0100 Subject: [PATCH] fix: prevent migration rollback failure when NULL values exist --- ...02155350_remove_phone_number_and_make_fields_optional.exs | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/priv/repo/migrations/20260102155350_remove_phone_number_and_make_fields_optional.exs b/priv/repo/migrations/20260102155350_remove_phone_number_and_make_fields_optional.exs index 7c1544c..5943b78 100644 --- a/priv/repo/migrations/20260102155350_remove_phone_number_and_make_fields_optional.exs +++ b/priv/repo/migrations/20260102155350_remove_phone_number_and_make_fields_optional.exs @@ -203,6 +203,11 @@ defmodule Mv.Repo.Migrations.RemovePhoneNumberAndMakeFieldsOptional do end def down do + # Set default values for NULL fields before restoring NOT NULL constraint + # This prevents the migration from failing if NULL values exist + execute("UPDATE members SET first_name = '' WHERE first_name IS NULL") + execute("UPDATE members SET last_name = '' WHERE last_name IS NULL") + # Restore first_name and last_name as NOT NULL execute("ALTER TABLE members ALTER COLUMN first_name SET NOT NULL") execute("ALTER TABLE members ALTER COLUMN last_name SET NOT NULL")