-- Keyset pagination indexes for time-series tables used during search index reindexing CREATE INDEX IF NOT EXISTS idx_entity_extension_ts_keyset ON entity_extension_time_series(timestamp, entityFQNHash); CREATE INDEX IF NOT EXISTS idx_report_data_ts_keyset ON report_data_time_series(timestamp, entityFQNHash); CREATE INDEX IF NOT EXISTS idx_data_quality_data_ts_keyset ON data_quality_data_time_series(timestamp, entityFQNHash); CREATE INDEX IF NOT EXISTS idx_test_case_resolution_status_ts_keyset ON test_case_resolution_status_time_series(timestamp, entityFQNHash); CREATE INDEX IF NOT EXISTS idx_query_cost_ts_keyset ON query_cost_time_series(timestamp, entityFQNHash); -- Index for listLastTestCaseResultsForTestSuite / listLastTestCaseResult performance. -- Supports "latest row per entityFQNHash" in data_quality_data_time_series. CREATE INDEX IF NOT EXISTS idx_entity_timestamp_desc ON data_quality_data_time_series(entityFQNHash, timestamp DESC); -- Add entityStatus generated column to glossary_term_entity table for efficient filtering -- This supports the entityStatus filtering in the search API endpoint ALTER TABLE glossary_term_entity ADD COLUMN IF NOT EXISTS entityStatus VARCHAR(32) GENERATED ALWAYS AS (json ->> 'entityStatus') STORED; -- Add index for efficient entityStatus filtering CREATE INDEX IF NOT EXISTS idx_glossary_term_entity_status ON glossary_term_entity (entityStatus);