Plan değişimi P449
Orta İyileşme 2,6× BekliyorDB-10 · query_id 2043 · değişim 28.09.2026 08:00 · plan 587 → 575 · Dönüşümlü (3 el değiştirme) · Sorgu detayı ve analizleri
Güven gerekçesiOrta: birden fazla aday (FORCED, PARAM) — rakip açıklamalar. Zayıf karşı kanıt: HIGH_VARIANCE, METADATA_GAP.
Sorgu metni
(@from_utc datetime2(7),@to_utc datetime2(7))DELETE FROM dbo.instance_counters_1m WHERE bucket >= @from_utc AND bucket < @to_utc
1. Etki özeti
| Metrik | Eski plan (587) | Yeni plan (575) | Değişim |
|---|---|---|---|
| Çalışma | 67 | 388 | |
| İptal / hata | 0 / 0 | 0 / 0 | |
| Süre ort. (ms) | 242,9 | 93,1 | -62% |
| Süre maks. (ms) | 980,4 | 11.074,6 | +1030% |
| Süre sapma (ms) | 129,6 | 573,1 | +342% |
| CPU ort. (ms) | 234,7 | 53,8 | -77% |
| CPU maks. (ms) | 639,6 | 542,4 | -15% |
| Mantıksal okuma ort. | 20.786,5 | 4.773,7 | -77% |
| Mantıksal okuma maks. | 23.172,0 | 74.848,0 | +223% |
| Fiziksel okuma | 1.138,7 | 149,2 | -87% |
| Yazma | 0,0 | 0,0 | |
| Bellek (KB) | 1.197,5 | 0,0 | -100% |
| Tempdb (KB) | 0,0 | 0,0 | |
| DOP | 1,0 | 1,0 | 0% |
| Satır ort. | 0,0 | 0,0 | |
| Satır maks. | 0,0 | 0,0 | |
| Dönem | 27.09.2026 22:00 → 28.09.2026 11:00 | 28.09.2026 08:00 → 29.09.2026 19:00 |
Bekleme kategorileri
ms / çalışma| Bekleme kategorisi | Eski plan (587) | Yeni plan (575) |
|---|---|---|
| Idle | – | 29,3 |
| CPU | 3,3 | 5,5 |
| Buffer IO | 5,5 | 4,5 |
| Memory | 7,7 | 3,0 |
2. Zaman çizelgesi
Eski planYeni plan
┆ değişim anı (kesik çizgi)░ olay (bant: zamanı aralık olarak bilinen)
Olaylar
| Olay | Nesne | Zaman | Önce → sonra | Eski plan kullanıyor | Yeni plan kullanıyor | |
|---|---|---|---|---|---|---|
| PlanForced | bilinmiyor | bilinmiyor | bilinmiyor | |||
| TableGrowth | dbo.instance_counters_1m | 27.09.2026 00:00 – 28.09.2026 00:00 | 3822948|287.15 → 4066948|124.03 | bilinmiyor | bilinmiyor |
3. Plan karşılaştırması
- Operatör düzeyinde fark yok: süre farkı büyük olasılıkla beklemeden ya da parametre değerinden.
- Eski planın index'leri
- dbo.instance_counters_1m.cci_instance_counters_1m
- Yeni planın index'leri
- dbo.instance_counters_1m.cci_instance_counters_1m
4. Neden adayları
ölçüm ve eşikle; kesin değildir| Kod | Ölçülen | Eşik | Sonuç | Açıklama |
|---|---|---|---|---|
| FORCEDmekanik | yeni plan zorlanmış | destekliyor | Yeni plan QDS'te zorlanmış (sp_query_store_force_plan); zorlama zamanı QDS'te yok. | |
| GROWTH | dbo.instance_counters_1m: satır 3,822,948 → 4,066,948 (%+6), boyut 287.15 → 124.03 MB (%-57) | ≥ %20 | desteklemiyor | dbo.instance_counters_1m eski planın döneminden değişime kadar satır %+6, boyut %-57 değişti (2026-09-27 → 2026-09-28). |
| WORKLOAD | çalışma başına satır 0 → 0 (1×) | ≥ 2× | desteklemiyor | Çalışma başına satır benzer (0 → 0): iş yükü farkı yok. |
| PARAM | baskın plan 3 kez el değiştirdi | ≥ 3 | destekliyor | İki plan aynı dönemde sırayla kullanılıyor (3 el değiştirme): plan seçimi bir olaydan çok parametre değerine bağlı (parametre duyarlılığı). |
5. Karşı kanıtlar
- HIGH_VARIANCE (zayıf): Yeni planın süre sapması ortalamanın %616'i: ortalama güvenilir değil.
- METADATA_GAP (zayıf): Metadata toplama 2026-09-27 tarihinde başladı, değişim 2026-09-28: index/istatistik/modül olayları değerlendirilemedi (olay yok değil, veri yok).
6. Korpus metni önizlemesi
onaylanınca RAG hafızasına bu metin girer (başlığa onaylayan eklenir)Plan change case #P449 | DB: DB-10 | Improvement | Confidence: Medium (review pending) Query: (@from_utc datetime2(?),@to_utc datetime2(?))DELETE FROM dbo.instance_counters_1m WHERE bucket >= @from_utc AND bucket < @to_utc Change: 2026-09-28 08:00 UTC, plan 587 → 575, pattern: Alternating (3 switches) Impact (Query Store, per execution): duration 242.9 → 93.1 ms (-62%); CPU 234.7 → 53.8 ms (-77%); reads 20,787 → 4,774 (-77%); rows 0 → 0 Plan difference: no operator-level difference Candidate cause: FORCED — The new plan is forced in Query Store (sp_query_store_force_plan); Query Store does not record when it was forced. Candidate cause: PARAM — The two plans alternate in the same period (3 switches): plan choice depends on the parameter value rather than an event (parameter sensitivity). Counter-evidence: HIGH_VARIANCE — The new plan's duration standard deviation is 616% of the average: the average is not reliable. Counter-evidence: METADATA_GAP — Metadata collection started on 2026-09-27 and the change was on 2026-09-28: index, statistics and module events could not be evaluated (no data, not no events). Confidence rationale: Medium: more than one candidate (FORCED, PARAM) — competing explanations. Weak counter-evidence: HIGH_VARIANCE, METADATA_GAP. Note: this is a candidate cause, not proof of the root cause.
7. Karar
Karar vermek için Analyst rolü gerekir.
Karar geçmişi
Kayıt yok
Henüz karar yok.