KB2952101 - PERBAIKI: Estimasi kardinalitas yang buruk ketika kolom kunci naik dicap sebagai stasioner di SQL Server

Berlaku Untuk
SQL Server 2012 Developer SQL Server 2012 Enterprise SQL Server 2012 Standard SQL Server 2014 Developer - duplicate (do not use) SQL Server 2014 Enterprise - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use)

Gejala

Asumsikan Anda mencoba menyisipkan nilai ke kolom indeks terdepan di Microsoft SQL Server 2012 atau SQL Server 2014. Ketika kurang dari 90 persen baris yang disisipkan memiliki nilai yang melampaui nilai RANGE_HI_KEY tertinggi dalam histogram, kolom dianggap stasioner, bukan naik. Oleh karena itu, tombol naik tidak terdeteksi, dan bendera pelacakan 2389 dan 2390 yang biasanya digunakan untuk memperbaiki masalah tombol naik tidak berfungsi. Hal ini menyebabkan estimasi kardinalitas yang buruk ketika Anda menggunakan predikat yang berada di luar nilai RANGE_HI_KEY dari statistik yang ada.

Catatan: Saat menerapkan pembaruan kumulatif ini, Anda harus mengaktifkan bendera pelacakan 4139. Hal ini menyebabkan SQL Server selalu mengubah histogram dalam skenario yang dijelaskan terlepas dari status kolom utama (naik, turun, atau stasioner).

Resolusi

Masalah ini pertama kali diperbaiki dalam pembaruan kumulatif berikut untuk SQL Server:

Pembaruan Kumulatif 1 untuk SQL Server 2012 SP2
        
         Pembaruan Kumulatif 2 untuk SQL Server 2014
        
         Pembaruan Kumulatif 10 untuk SQL Server 2012 SP1

Tentang pembaruan kumulatif untuk SQL Server

Setiap pembaruan kumulatif baru untuk SQL Server berisi semua hotfix dan semua perbaikan keamanan yang disertakan dengan pembaruan kumulatif sebelumnya. Lihat pembaruan kumulatif terbaru untuk SQL Server:

      

Status

Microsoft telah mengonfirmasi bahwa ini adalah masalah dalam produk Microsoft sebagaimana tercantum di bagian "Berlaku untuk".