rag.usp_Equivalence_MarkLegacy
procedureDB-12 · modified 10/9/2026 · Back to object search
Statements
5 statements ·
20 executions ·
0.0 s total
| Query (query_hash) | Executions | Avg duration (ms) | Avg CPU (ms) | Avg reads | Share of duration |
|---|---|---|---|---|---|
| 0xF68524C4AB935677 | 5 | 1.2 | 1.2 | 54 | 52.7% |
| 0xAA34E700CFC720CF | 5 | 0.5 | 0.4 | 12 | 21.1% |
| 0x365882C14360C6A0 | 5 | 0.3 | 0.3 | 25 | 15.3% |
| 0x798E8890B352EC01 | 2 | 0.3 | 0.3 | 105 | 5.7% |
| 0xFBAD1B52DC971571 | 3 | 0.2 | 0.2 | 0 | 5.3% |
Dependencies
Direct references (sys.sql_expression_dependencies); dynamic SQL and deferred names may be missing.same databaseother databaselinked server
| Direction | Object | Type | Scope |
|---|---|---|---|
| uses | DBA.fn_Now | function | same database |
| uses | rag.AnalysisRecommendation | table | same database |
| uses | rag.RecommendationEquivalence | table | same database |
-- Yayın adımı (spec §7): bu denetim olmadan Valid almış bekleyen refactor'lar Warning olur; kararı verilmiş öneriler değişmez.
-- Sonucu olmayan her bekleyen refactor Untestable/Legacy kaydı alır (bekçi eşleme ve parametre varsa yeniden test eder).
CREATE PROCEDURE rag.usp_Equivalence_MarkLegacy
AS
BEGIN
SET NOCOUNT ON;
SET XACT_ABORT ON;
DECLARE @note nvarchar(200) = N'Eşdeğerlik: eşdeğerlik test edilmedi (eski analiz); Test DB eşlemesi varsa yeniden test edin.';
BEGIN TRAN;
-- 2026-10-04 ilk sürüm script'siz "güvenilir öneri üretilemedi" kartlarına da Legacy yazmıştı; test edilecek SQL yok, kayıt kalkar
DELETE e FROM rag.RecommendationEquivalence AS e JOIN rag.AnalysisRecommendation AS r ON r.RecommendationID = e.RecommendationID
WHERE e.ReasonCode = 'Legacy' AND r.Script IS NULL;
DECLARE @ids TABLE (RecommendationID bigint PRIMARY KEY, BaseStatus varchar(15));
INSERT @ids SELECT r.RecommendationID, r.ValidationStatus FROM rag.AnalysisRecommendation AS r
WHERE r.Kind = 'Refactor' AND r.Decision = 'Pending' AND r.Script IS NOT NULL
AND NOT EXISTS (SELECT 1 FROM rag.RecommendationEquivalence AS e WHERE e.RecommendationID = r.RecommendationID);
UPDATE r SET ValidationStatus = IIF(r.ValidationStatus = 'Valid', 'Warning', r.ValidationStatus),
ValidationNotes = IIF(r.ValidationStatus = 'Valid', CONCAT(@note, IIF(r.ValidationNotes IS NULL, N'', CHAR(10) + r.ValidationNotes)), r.ValidationNotes)
FROM rag.AnalysisRecommendation AS r JOIN @ids AS i ON i.RecommendationID = r.RecommendationID;
INSERT rag.RecommendationEquivalence (RecommendationID, Status, ReasonCode, ParamSets, Note, CheckedUtc, BaseStatus)
SELECT i.RecommendationID, 'Untestable', 'Legacy', 0, N'eşdeğerlik test edilmedi (eski analiz)', DBA.fn_Now(), i.BaseStatus FROM @ids AS i;
COMMIT;
END;
Analyses of this object
Nothing here
No analyses for this object.