-- Migration: Add UUID columns to soundtrack and song, then backfill

-- Add UUID column to soundtrack (nullable for now)
ALTER TABLE soundtrack ADD COLUMN uuid UUID NULL UNIQUE;

-- Create index on uuid for performance
CREATE INDEX IF NOT EXISTS idx_soundtrack_uuid ON soundtrack(uuid);

-- Add UUID column to song (nullable for now)
ALTER TABLE song ADD COLUMN uuid UUID NULL UNIQUE;

-- Create index on uuid for performance
CREATE INDEX IF NOT EXISTS idx_song_uuid ON song(uuid);

-- Backfill existing records immediately
UPDATE soundtrack SET uuid = gen_random_uuid() WHERE uuid IS NULL;
UPDATE song SET uuid = gen_random_uuid() WHERE uuid IS NULL;

-- Verify no nulls remain
-- SELECT COUNT(*) FROM soundtrack WHERE uuid IS NULL;  -- Should be 0
-- SELECT COUNT(*) FROM song WHERE uuid IS NULL;            -- Should be 0
