31 lines
1.2 KiB
PL/PgSQL
31 lines
1.2 KiB
PL/PgSQL
-- Migration: 005_property_schema_version
|
|
-- Description: Track property schema version for automated migrations
|
|
|
|
BEGIN;
|
|
|
|
-- Add property schema version to revisions
|
|
-- This tracks which version of the property schema was used when the revision was created
|
|
ALTER TABLE revisions ADD COLUMN IF NOT EXISTS property_schema_version INTEGER DEFAULT 1;
|
|
|
|
-- Create index for finding revisions that need migration
|
|
CREATE INDEX IF NOT EXISTS idx_revisions_property_schema_version ON revisions(property_schema_version);
|
|
|
|
-- Create property migration history table
|
|
-- Tracks when property schema migrations have been run
|
|
CREATE TABLE IF NOT EXISTS property_migrations (
|
|
id UUID PRIMARY KEY DEFAULT uuid_generate_v4(),
|
|
schema_name TEXT NOT NULL,
|
|
from_version INTEGER NOT NULL,
|
|
to_version INTEGER NOT NULL,
|
|
items_affected INTEGER NOT NULL DEFAULT 0,
|
|
started_at TIMESTAMPTZ NOT NULL DEFAULT now(),
|
|
completed_at TIMESTAMPTZ,
|
|
status TEXT NOT NULL DEFAULT 'pending', -- pending, running, completed, failed
|
|
error_message TEXT
|
|
);
|
|
|
|
CREATE INDEX IF NOT EXISTS idx_property_migrations_schema ON property_migrations(schema_name);
|
|
CREATE INDEX IF NOT EXISTS idx_property_migrations_status ON property_migrations(status);
|
|
|
|
COMMIT;
|