sp_QuickieStore: optimize time bucketing in @find_high_impact#707
Merged
erikdarlingdata merged 3 commits intodevfrom Mar 23, 2026
Merged
sp_QuickieStore: optimize time bucketing in @find_high_impact#707erikdarlingdata merged 3 commits intodevfrom
erikdarlingdata merged 3 commits intodevfrom
Conversation
sp_QuickieStore: @sort_order tiebreaker for @find_high_impact
The time bucketing query joined the full 4-table DMV chain (query → plan → runtime_stats → interval) filtered by #hi_interesting. The optimizer struggled with cardinality estimates on the hash join. Moved query_id staging (previously Step 5b) to Step 3b so it runs before time bucketing. Step 4 now starts from #hi_id_staging_queries (known-small temp table) instead of query_store_query, dropping to 3 DMVs with better cardinality estimates. No join hints needed. Tested on SQL2022 (StackOverflow2013, hammerdb_tpch, hammerdb_tpcc) and SQL2016 (StackOverflow2010). Co-Authored-By: Claude Opus 4.6 (1M context) <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
Moved query_id staging before time bucketing so Step 4 starts from
#hi_id_staging_queries(known-small temp table) instead of re-joining throughquery_store_query. Drops from 4 DMVs to 3 with better cardinality estimates — no join hints needed.Test plan
🤖 Generated with Claude Code