From da4a56ba6b76803cfa2aaaf187c0fc0e687ccf10 Mon Sep 17 00:00:00 2001 From: Matthias Hochmeister Date: Fri, 27 Feb 2026 21:08:52 +0100 Subject: [PATCH] fix backend --- backend/src/database/migrations/004_create_einsaetze.sql | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/backend/src/database/migrations/004_create_einsaetze.sql b/backend/src/database/migrations/004_create_einsaetze.sql index 29c40e4..3e9daa1 100644 --- a/backend/src/database/migrations/004_create_einsaetze.sql +++ b/backend/src/database/migrations/004_create_einsaetze.sql @@ -103,8 +103,9 @@ CREATE INDEX IF NOT EXISTS idx_einsaetze_alarm_time ON einsaetze(alarm_time CREATE INDEX IF NOT EXISTS idx_einsaetze_einsatz_art ON einsaetze(einsatz_art); CREATE INDEX IF NOT EXISTS idx_einsaetze_status ON einsaetze(status); CREATE INDEX IF NOT EXISTS idx_einsaetze_einsatzleiter ON einsaetze(einsatzleiter_id); -CREATE INDEX IF NOT EXISTS idx_einsaetze_alarm_year ON einsaetze(EXTRACT(YEAR FROM alarm_time)); -CREATE INDEX IF NOT EXISTS idx_einsaetze_alarm_art_year ON einsaetze(einsatz_art, EXTRACT(YEAR FROM alarm_time)); +-- Note: EXTRACT(YEAR FROM timestamptz) is STABLE (timezone-dependent), not IMMUTABLE, +-- so it cannot be used in expression indexes. Use alarm_time range scans for year filtering. +CREATE INDEX IF NOT EXISTS idx_einsaetze_alarm_art ON einsaetze(einsatz_art, alarm_time DESC); -- Auto-update updated_at CREATE TRIGGER update_einsaetze_updated_at