-- 024_executions_created_at_index.up.sql -- Support newest-first execution history. -- -- ListExecutions previously ordered by the target entity's slug, which is -- neither useful for a history view nor unique enough to paginate on. It now -- orders by (created_at DESC, entity_id DESC) -- the compound key the cursor -- carries -- and executions had indexes only on target_entity_id and status. -- -- The same ordering backs /activity/recent, which was doing this unindexed. CREATE INDEX IF NOT EXISTS idx_executions_created_at ON executions (created_at DESC, entity_id DESC); -- Per-entity history ("what has run against this host?") filters on the target -- and then sorts, so give it a composite rather than making the planner sort -- every row for a target with a long history. CREATE INDEX IF NOT EXISTS idx_executions_target_created_at ON executions (target_entity_id, created_at DESC);