الأعراض
قد يحدث خطأ في التأكيد عندما تقوم Microsoft SQL Server بتنفيذ إجراء مخزن بشكل متكرر يقوم بتنفيذ ما يلي:
- يأخذ كائنا كبيرا، مثل varchar(max) أو varbinary(max)، كوسيطة، و
- إنشاء جدول مؤقت يتم تحديد نطاقه لتنفيذ الإجراء، و
- يستخدم وسيطة الكائن الكبير في الجدول المؤقت.
قد تجد خطأ التأكيد الذي يشبه ما يلي في سجل الخطأ SQL Server:
معرف SPID للتاريخ/الوقت خطأ: 17065، الخطورة: 16، الحالة: 1.
التاريخ/الوقت SPID SQL Server Assertion: File: FilePath\FileName, line = LineNumber Failed Assertion = 'fFalse' attempt to access expired blob handle (1). قد يكون هذا الخطأ متعلقا بالتوقيت. إذا استمر الخطأ بعد إعادة تشغيل العبارة، فاستخدم DBCC CHECKDB للتحقق من قاعدة البيانات بحثا عن التكامل الهيكلي، أو أعد تشغيل الخادم لضمان عدم تلف بنيات البيانات في الذاكرة.
معرف SPID للتاريخ/الوقت خطأ: 3624، الخطورة: 20، الحالة: 1.
معرف SPID للتاريخ/الوقت فشل التحقق من تأكيد النظام. تحقق من سجل الأخطاء SQL Server للحصول على التفاصيل. عادة ما يحدث فشل التأكيد بسبب خطأ في البرنامج أو تلف البيانات. للتحقق من تلف قاعدة البيانات، ضع في اعتبارك تشغيل DBCC CHECKDB. إذا وافقت على إرسال نسخ احتياطية إلى Microsoft أثناء الإعداد، فسيتم إرسال تفريغ صغير إلى Microsoft. قد يتوفر تحديث من Microsoft في حزمة الخدمة الأخيرة أو في إصلاح عاجل من الدعم التقني.
السبب
SQL Server منطق داخلي لتعطيل التخزين المؤقت للاستعلامات التي تشير إلى كائنات كبيرة بحيث لا تشير عمليات التنفيذ اللاحقة إلى LOBs هذه (التي تم إنشاؤها أثناء عمليات التشغيل السابقة وبالتالي فهي غير صالحة لعمليات التشغيل اللاحقة). لم يعالج هذا المنطق حالة تحليل الاسم المؤجل (DNR) على الجداول المؤقتة التي تسببت في تخزين هذه الخطط مؤقتا. الجداول المؤقتة ذات النطاق مكلفة للإنشاء، SQL Server تخزينها مؤقتا لإعادة استخدامها في عمليات التنفيذ اللاحقة. يمنع هذا إعادة التحويل البرمجي لمثل هذه الاستعلامات بسبب تغييرات المخطط.
تعرف على المزيد حول تحليل الاسم المؤجل.
الدقة
تم تصحيح هذه المشكلة في التحديثات التراكمية التالية SQL Server:
التحديث التراكمي 8 SQL Server 2016 SP1
التحديث التراكمي 4 SQL Server 2017
التحديث التراكمي 10 SQL Server 2014 Service Pack 2
حول التحديثات التراكمية SQL Server
يحتوي كل تحديث تراكمي جديد SQL Server على جميع الإصلاحات العاجلة وإصلاحات الأمان التي كانت موجودة في الإصدار السابق. اطلع على آخر تحديث تراكمي SQL Server:
آخر تحديث تراكمي SQL Server 2016
آخر تحديث تراكمي SQL Server 2017
آخر التحديثات التراكمية SQL Server 2014
الحالة
لقد أكدت Microsoft على أن هذه مشكلة في منتجات Microsoft المُدرجة في القسم "ينطبق على".
المراجع
تعرف على المصطلحات التي تستخدمها Microsoft لوصف تحديثات البرامج.