Full Dashboard column parity + last_execution_time filter#250
Merged
erikdarlingdata merged 1 commit intodevfrom Feb 24, 2026
Merged
Full Dashboard column parity + last_execution_time filter#250erikdarlingdata merged 1 commit intodevfrom
erikdarlingdata merged 1 commit intodevfrom
Conversation
…store_stats Adds all missing columns from SQL Server DMVs to the three query/procedure collectors, fixing the root cause of stale queries appearing in the UI. Schema (v13): - query_stats: 52 columns (was ~30) — adds last_execution_time, creation_time, total_spills, min/max spills, min/max grant_kb, min/max used_grant_kb, min/max ideal_grant_kb, min/max reserved/used threads, min/max physical_reads, min/max rows, min/max DOP, total_clr_time, columnstore segment reads/skips - procedure_stats: 37 columns — adds last_execution_time, min/max worker_time, min/max elapsed_time, min/max logical_reads/writes, min/max physical_reads, total/min/max spills, last_physical_reads - query_store_stats: 57 columns — adds module_name, min/max DOP, is_forced_plan, plan_forcing_type, force_failure_count, last_force_failure_reason, compatibility_level, query_plan_hash, version-gated columns for SQL 2017+ (avg_num_physical_io_reads, avg_log_bytes_used, avg_tempdb_space_used) and SQL 2022+ (plan_type_desc) Delta calculator: - Uses plan_handle as delta key (falls back to query_hash) to prevent cross-contamination between plans for the same query - Removes seeding for query_stats and procedure_stats — single-execution queries are no longer invisible Display queries: - Adds last_execution_time filter using server UTC offset to exclude stale queries from the plan cache that haven't executed within the time window - Query Store already stores last_execution_time as UTC, so no offset needed - Drill-down views updated: ProcedureHistory gets spills/min/max CPU/duration, QueryStoreHistory gets Min/Max DOP columns Tested: v13 migration clean, all collectors successful across 4 servers, verified hot table and parquet archive data integrity, ran exact UI display queries against live data with correct results. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
last_execution_timeusing server UTC offsetplan_handle(falls back toquery_hash) and removes seeding for query/procedure statsTest plan
🤖 Generated with Claude Code