Cut three legacy pressure-noise rules (keep TokenAndPerm)#1063
Merged
Conversation
…lyzer The Memory Pressure (buffer-pool/plan-cache >10% drop in 5 min), Memory Grant Pressure, and CPU Scheduling Pressure rules are noise: they fire on short-window deltas, don't quantify the delta, hand back a circular "SELECT * FROM collect.<self>" investigate query, and duplicate (worse) the analysis-engine facts that already cover those signals with real advice (RESOURCE_SEMAPHORE / MEMORY_GRANT_PENDING / SOS_SCHEDULER_YIELD / THREADPOOL). Removed the three INSERT blocks from collect.configuration_issues_analyzer (validated: proc re-creates + EXECs clean on sql2022). KEPT the actionable config rules (Query Store, auto_shrink/close, MAXDOP/CTFP, server config, memory dumps) and — importantly — the "Memory Clerk Growth" rule, which is actually the TokenAndPermUserStore bloat check: quantified (GB grown), actionable (DBCC FREESYSTEMCACHE), real 1GB threshold, not covered by any engine fact. Un-suppressed it in the Recommendations reader accordingly (the reader still filters the three genuine-noise problem-areas for existing rows). Co-Authored-By: Claude Opus 4.8 (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.
What
The legacy
configuration_issues_analyzersurfaced three noise rule families into the Recommendations tab: Memory Pressure (buffer-pool/plan-cache >10% drop in 5 min), Memory Grant Pressure, CPU Scheduling Pressure. Each fires on a short-window delta, doesn't quantify it, gives a circularSELECT * FROM collect.<self>"investigate" query, and duplicates — worse — the analysis-engine facts that already cover those signals (RESOURCE_SEMAPHORE/MEMORY_GRANT_PENDING/SOS_SCHEDULER_YIELD/THREADPOOL).On a healthy server (e.g. SQL2022) these were literally the only "recommendations" showing — making a clean instance look broken.
Change
collect.configuration_issues_analyzer(install/50, −365 lines). Validated: the proc re-creates andEXECs clean on sql2022.DBCC FREESYSTEMCACHE), real 1GB threshold, and not covered by any engine fact — so it stays, and I un-suppressed it inRecommendationsReader(the reader still filters the three genuine-noise problem-areas for already-persisted rows).The Recommendations affordance rework already replaced the raw "investigate query" with a dashboard deep-link + an MCP "Ask AI" prompt; this removes the noise rules at the source.
Tests
Dashboard builds 0 errors; install/50 validated against a live SQL Server (proc compiles + runs). CI's SQL Server 2017/2019/2022/2025 install tests exercise the modified script.
🤖 Generated with Claude Code