test_Rollup.test tam kosu son tam gunden sonraki eksik gunleri tamamlar ve son tam gunu ilerletir
yordamDB-11 · değişiklik 11.10.2026 · Obje aramaya dön
İfadeler
2 ifade ·
12 çalışma ·
toplam 0,0 sn
| Sorgu (query_hash) | Çalışma | Ort. süre (ms) | Ort. CPU (ms) | Ort. okuma | Süredeki pay |
|---|---|---|---|---|---|
| 0xB6E8365C3B5E6FD6 | 4 | 0,4 | 0,4 | 15 | %51,9 |
| 0x98F6F88EF0350A6B | 8 | 0,2 | 0,2 | 28 | %48,1 |
Bağımlılıklar
Doğrudan referanslar (sys.sql_expression_dependencies); dinamik SQL ve geç bağlanan adlar görünmeyebilir.aynı veritabanıbaşka veritabanılinked server
| Yön | Nesne | Tür | Kapsam |
|---|---|---|---|
| kullanıyor | DBA.CollectionRunLog | tablo | aynı veritabanı |
| kullanıyor | DBA.CollectionWatermark | tablo | aynı veritabanı |
| kullanıyor | DBA.fn_Now | fonksiyon | aynı veritabanı |
| kullanıyor | DBA.usp_Rollup_Daily | yordam | aynı veritabanı |
| kullanıyor | perf.QueryDailyStats | tablo | aynı veritabanı |
| kullanıyor | test_Rollup.GunEkle | yordam | aynı veritabanı |
| kullanıyor | test_Rollup.KosuHazirla | yordam | aynı veritabanı |
| kullanıyor | tSQLt.AssertEquals | yordam | aynı veritabanı |
| kullanıyor | tSQLt.AssertEqualsString | yordam | aynı veritabanı |
CREATE PROCEDURE test_Rollup.[test tam kosu son tam gunden sonraki eksik gunleri tamamlar ve son tam gunu ilerletir]
AS
BEGIN
EXEC test_Rollup.KosuHazirla;
DECLARE @today datetime = CAST(CAST(DBA.fn_Now() AS date) AS datetime);
DECLARE @y datetime = DATEADD(day, -1, @today), @d2 datetime = DATEADD(day, -2, @today), @d3 datetime = DATEADD(day, -3, @today);
-- Son tam gün bugün-4: bugün-3 ve bugün-2 geceleri kaçmış
INSERT DBA.CollectionWatermark (ServerID, DatabaseName, SourceType, LastValue)
VALUES (0, N'(tümü)', 'ROLLUP', CONVERT(bigint, CONVERT(char(8), DATEADD(day, -4, @today), 112)));
EXEC test_Rollup.GunEkle @d3, 3;
EXEC test_Rollup.GunEkle @y, 4;
EXEC test_Rollup.GunEkle @today, 5;
EXEC DBA.usp_Rollup_Daily;
DECLARE @days nvarchar(200) = (SELECT STRING_AGG(CONVERT(char(10), StatDateUtc, 23), ',') WITHIN GROUP (ORDER BY StatDateUtc)
FROM perf.QueryDailyStats WHERE StatDateUtc >= @d3),
@prof nvarchar(200) = (SELECT STRING_AGG(CONVERT(char(10), StatDateUtc, 23), ',') WITHIN GROUP (ORDER BY StatDateUtc)
FROM rag.usp_EmbedQueue_EnqueueProfiles_SpyProcedureLog),
@imp int = (SELECT COUNT(*) FROM rag.usp_AnalysisImpact_Measure_SpyProcedureLog),
@mark int = (SELECT COUNT(*) FROM rag.usp_QueryCandidates_Mark_SpyProcedureLog),
@wm bigint = (SELECT LastValue FROM DBA.CollectionWatermark WHERE ServerID = 0 AND SourceType = 'ROLLUP'),
@log nvarchar(100) = (SELECT CONCAT(Status, N'/', RowsLoaded) FROM DBA.CollectionRunLog WHERE SourceType = 'ROLLUP');
DECLARE @expDays nvarchar(200) = CONCAT(CONVERT(char(10), @d3, 23), N',', CONVERT(char(10), @y, 23), N',', CONVERT(char(10), @today, 23)),
@expProf nvarchar(200) = CONCAT(CONVERT(char(10), @d3, 23), N',', CONVERT(char(10), @d2, 23), N',', CONVERT(char(10), @y, 23)),
@expWm bigint = CONVERT(bigint, CONVERT(char(8), @y, 112));
EXEC tSQLt.AssertEqualsString @expDays, @days;
EXEC tSQLt.AssertEqualsString @expProf, @prof; -- bugün profil kuyruğuna girmez
EXEC tSQLt.AssertEquals 1, @imp;
EXEC tSQLt.AssertEquals 1, @mark;
EXEC tSQLt.AssertEquals @expWm, @wm;
EXEC tSQLt.AssertEqualsString N'OK/3', @log;
END;
Bu nesnenin analizleri
Kayıt yok
Bu nesne için analiz yok.