Files
fotkyBuzalkovi/migrations/002_add_photo_errors.sql
T
administrator 97c1796753 notebookVb
2026-05-29 06:21:55 +02:00

26 lines
1.4 KiB
SQL

-- Migration: Add photo_errors table + verified_at column to photos
-- Run v Navicatu nebo přes Python (CREATE INDEX CONCURRENTLY musí být mimo transakci).
-- ── photo_errors ────────────────────────────────────────────────────────────
CREATE TABLE IF NOT EXISTS photo_errors (
id BIGSERIAL PRIMARY KEY,
photo_id BIGINT NOT NULL REFERENCES photos(id) ON DELETE CASCADE,
severity VARCHAR(20) NOT NULL CHECK (severity IN ('critical', 'warning', 'info')),
error_code VARCHAR(50) NOT NULL,
error_message TEXT,
detected_at TIMESTAMPTZ NOT NULL DEFAULT NOW()
);
CREATE INDEX IF NOT EXISTS idx_photo_errors_photo_id ON photo_errors (photo_id);
CREATE INDEX IF NOT EXISTS idx_photo_errors_severity ON photo_errors (severity);
CREATE INDEX IF NOT EXISTS idx_photo_errors_code ON photo_errors (error_code);
-- ── photos.verified_at ──────────────────────────────────────────────────────
ALTER TABLE photos ADD COLUMN IF NOT EXISTS verified_at TIMESTAMPTZ;
-- Partiální index — verifikační skript bude často filtrovat WHERE verified_at IS NULL.
CREATE INDEX CONCURRENTLY IF NOT EXISTS idx_photos_verified_at_null
ON photos (id) WHERE verified_at IS NULL;