KB2938464 - PERBAIKI: Tidak dapat menggunakan showplan_xml untuk kueri/prosedur saat Anda membuat prosedur tersimpan yang dikompilasi secara native dengan kueri yang berisi ekspresi besar di SQL Server 2014

Berlaku Untuk
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 membuat prosedur tersimpan yang dikompilasi secara native dengan kueri yang berisi ekspresi besar yang memiliki lebih dari 256 operator di Microsoft SQL Server 2014. Ketika mencoba menggunakan showplan_xml pada kueri atau prosedur, Anda mendapatkan kesalahan berikut:

Catatan

Msg 41322, Tingkat 16, Negara Bagian 33, Prosedur <sp_name>, Baris <line_number>
Ekspor/impor MAT/PIT mengalami kegagalan untuk tabel yang dioptimalkan memori atau prosedur tersimpan yang dikompilasi secara native dengan Nomor>ID objek< dalam Nomor> ID< database. Kode kesalahan 0x88000015.

Penyebab

Masalah ini terjadi karena cacat di SQL Server 2014.

Resolusi

Setelah hotfix diterapkan, showplan_xml akan berhasil untuk prosedur native yang memiliki banyak operator.
Masalah pertama kali diperbaiki dalam pembaruan kumulatif SQL Server berikut.

Pembaruan Kumulatif 1 untuk SQL Server 2014 /en-us/help/2931693

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:

      

Solusi

Untuk mengatasi masalah tersebut, gunakan solusi berikut:

  • Bagi ekspresi menjadi beberapa sub-ekspresi.
  • Gunakan tanda kurung untuk secara eksplisit memaksa penyarangan ekspresi untuk membuat pohon ekspresi yang lebar tetapi dangkal, bukan pohon ekspresi yang bertumpuk dalam.

Status

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