test_RagStore.test korpus senkronu vaka belgelerini bir kez alir; taze profili, KB'yi ve kullanicinin sildigi/cikardigi belgeyi almaz
yordamDB-11 · değişiklik 11.10.2026 · Obje aramaya dön
İfadeler
5 ifade ·
252 çalışma ·
toplam 0,3 sn
| Sorgu (query_hash) | Çalışma | Ort. süre (ms) | Ort. CPU (ms) | Ort. okuma | Süredeki pay |
|---|---|---|---|---|---|
| 0xD555DBA2D45C8F6B | 177 | 0,9 | 0,9 | 68 | %58,7 |
| 0x7BED399E211EC738 | 34 | 2,3 | 2,2 | 102 | %28,5 |
| 0xDC633FE59A11E871 | 26 | 0,7 | 0,7 | 24 | %6,9 |
| 0xE109043F421C0D06 | 4 | 2,3 | 2,3 | 101 | %3,4 |
| 0xD426D0898058810E | 11 | 0,6 | 0,6 | 25 | %2,6 |
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.fn_Now | fonksiyon | aynı veritabanı |
| kullanıyor | perf.QueryDailyStats | tablo | aynı veritabanı |
| kullanıyor | rag.Document | tablo | aynı veritabanı |
| kullanıyor | rag.EmbedQueue | tablo | aynı veritabanı |
| kullanıyor | rag.usp_Corpus_Resync | yordam | aynı veritabanı |
| kullanıyor | tSQLt.AssertEquals | yordam | aynı veritabanı |
| kullanıyor | tSQLt.AssertEqualsTable | yordam | aynı veritabanı |
| kullanıyor | tSQLt.FakeTable | yordam | aynı veritabanı |
CREATE PROCEDURE test_RagStore.[test korpus senkronu vaka belgelerini bir kez alir; taze profili, KB'yi ve kullanicinin sildigi/cikardigi belgeyi almaz]
AS
BEGIN
EXEC tSQLt.FakeTable N'rag.Document', @Identity = 1, @Defaults = 1;
EXEC tSQLt.FakeTable N'rag.AnalysisRequest';
EXEC tSQLt.FakeTable N'rag.AnalysisRecommendation';
EXEC tSQLt.FakeTable N'rag.PlanChangeCase';
EXEC tSQLt.FakeTable N'perf.QueryDailyStats';
INSERT rag.Document (SourceType, SourceRef, Title, Content, ContentHash, ServerID, ExclusionReason, IsActive) VALUES
('Profile', N'1|db|0x0000000000000001', N't', N'c', 0x01, 1, NULL, 1), ('Case', N'42', N't', N'c', 0x01, NULL, NULL, 1),
('Case', N'plan:7', N't', N'c', 0x01, NULL, NULL, 1), ('KB', N'kb/01.md', N't', N'c', 0x01, NULL, NULL, 1),
('Case', N'43', N't', N'c', 0x01, NULL, NULL, 1),
('Case', N'44', N't', N'c', 0x01, NULL, 'Deleted', 0), -- kullanıcı bilgi tabanından sildi
('Case', N'45', N't', N'c', 0x01, NULL, 'Manual', 0); -- yönetici elle çıkardı
INSERT perf.QueryDailyStats (StatDateUtc, ServerID, DatabaseName, query_hash, Source) VALUES ('2026-10-04', 1, N'db', 0x0000000000000001, 'QDS');
INSERT rag.EmbedQueue (SourceType, SourceRef, Status, Attempt, EnqueuedAtUtc) VALUES
('Case', N'43', 'Queued', 0, DBA.fn_Now()), -- zaten bekliyor: ikinci kayıt açılmaz
('Case', N'42', 'Done', 1, DBA.fn_Now()); -- bitmiş iş engel değil
DECLARE @q int;
EXEC rag.usp_Corpus_Resync @ProfileStaleDays = 30, @Queued = @q OUTPUT;
EXEC tSQLt.AssertEquals 2, @q;
SELECT SourceType, SourceRef INTO #actual FROM rag.EmbedQueue WHERE Status = 'Queued';
SELECT SourceType, SourceRef INTO #expected FROM (VALUES ('Case', N'42'), ('Case', N'43'), ('Case', N'plan:7')) v (SourceType, SourceRef);
EXEC tSQLt.AssertEqualsTable '#expected', '#actual';
END;
Bu nesnenin analizleri
Kayıt yok
Bu nesne için analiz yok.