Gejala
Pertimbangkan skenario berikut:
- Anda menggunakan Microsoft SQL Server 2012 atau SQL Server 2014 dan Microsoft SQL Server Data Tools (SSDT) untuk merancang Paket Layanan Integrasi SQL Server (SSIS).
- Dalam Tugas Alur Data, Anda menggunakan komponen sumber seperti sumber OLE DB, sumber ADO.NET, atau sumber ODBC, untuk mengatur mode Akses Data ke Perintah SQL dan ketik kueri dalam kotak perintah.
- Anda mengklik Pratinjau untuk melihat hasil kueri.
Dalam skenario ini, perintah yang dipratinjau berjalan lebih dari 30 detik dan gagal dalam perancang. Selain itu, Anda menerima kesalahan yang menyerupai "Batas Waktu Kueri Kedaluwarsa."
Penyebab
Masalah ini terjadi karena ambang batas CommandTimeout dikodekan keras sebagai 30 detik untuk fitur pratinjau di SSIS designer.
Resolusi
Masalah pertama kali diperbaiki dalam pembaruan kumulatif SQL Server berikut.
Pembaruan Kumulatif 3 untuk SQL Server 2014 /en-us/help/2984923
Pembaruan Kumulatif 1 untuk SQL Server 2012 SP2 /en-us/help/2976982
Pembaruan Kumulatif 10 untuk SQL Server 2012 SP1 /en-us/help/2954099
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:
- Pembaruan kumulatif terbaru untuk SQL Server 2014
- Pembaruan kumulatif terbaru untuk SQL Server 2012 SP2
- Pembaruan kumulatif terbaru untuk SQL Server 2012 SP1
Catatan:
Sebelum Anda menerapkan hotfix ini, pengaturan waktu habis ditetapkan menjadi 30 detik dalam pratinjau data untuk semua komponen SSIS.
Setelah menerapkan hotfix ini:
Untuk komponen sumber ADO.NET dan komponen sumber OLE DB, komponen tersebut sudah memiliki properti CommandTimeout. Properti ini akan digunakan dalam pratinjau data.
Untuk semua komponen lain yang memiliki fitur pratinjau data tetapi tidak memiliki properti CommandTimeout:
- Jika terdapat nilai DWORD, DataPreviewTimeout di bawah kunci registri sistem:\\HKLM\SOFTWARE\Microsoft\Microsoft SQL Server\SSIS\Preferences, SSIS akan menggunakan nilai tersebut sebagai waktu habis selama pratinjau.
- Jika tidak ada nilai DWORD DataPreviewTimeout, SSIS masih menggunakan 30 detik.
Status
Microsoft telah mengonfirmasi bahwa ini adalah masalah dalam produk Microsoft sebagaimana tercantum di bagian "Berlaku untuk".