تخطي إلى المحتوى الرئيسي
الدعم
تسجيل الدخول باستخدام حساب Microsoft
تسجيل الدخول أو إنشاء حساب.
مرحباً،
تحديد استخدام حساب مختلف!
لديك حسابات متعددة
اختر الحساب الذي تريد تسجيل الدخول باستخدامه.

الخطأ رقم: 187868 (تعديل المحتوى)VSTS: 1340145

تقوم Microsoft بتوزيع الإصلاحات Microsoft SQL Server 2012 لتنزيل ملف واحد. لأن الإصلاحات تراكمية، كل إصدار جديد يحتوي على كافة الإصلاحات العاجلة وتحديث كافة التحديثات الأمنية التي تم تضمينها مع SQL Server 2012 السابقة الإصدار.

الأعراض

يرجى مراعاة السيناريو التالي:

  • إنشاء إجراء مخزن يستخدم معلمة قيم الجدول (TVP) في Microsoft SQL Server 2012.

  • استخدام منشئ ملفات التعريف SQL أو أحداث توسيع ملقم SQL للحصول RPC: بدء و RPC: إكمال الأحداث.

  • يمكنك تشغيل استعلام يستخدم في TVP.

  • انتهت مهلة الاستعلام.

في هذا السيناريو، يحدث خطأ ما يؤدي عدم جدولة وبطء تشغيل الاستعلامات التي تعمل على جدولة نفسه. بالإضافة إلى ذلك، يتم إنشاء ملف تفريغ مصغر في مجلد السجل SQL Server.
عند حدوث هذه المشكلة، تتلقى رسالة خطأ مشابهة لما يلي:

System.Data.SqlClient.SqlException (0x80131904): انتهت مهلة. انقضت فترة المهلة قبل إكمال العملية أو الملقم لا يستجيب.
في System.Data.SqlClient.SqlInternalConnection.OnError (استثناء SqlException، بريككونيكشن منطقية)
في System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning()
في System.Data.SqlClient.TdsParserStateObject.ReadSniError (ستاتيوبج تدسبارسيرستاتيوبجيكت، خطأ UInt32)
في System.Data.SqlClient.TdsParserStateObject.ReadSni (ل asyncResult دباسينكريسولت، ستاتيوبج تدسبارسيرستاتيوبجيكت)
في System.Data.SqlClient.TdsParserStateObject.ReadNetworkPacket()
في System.Data.SqlClient.TdsParserStateObject.ReadByte()
في System.Data.SqlClient.TdsParser.Run (رونبيهافيور رونبيهافيور، كمداندلير SqlCommand، بيانات SqlDataReader، بولككوبيهاندلير بولككوبيسيمبليريسولتسيت، ستاتيوبج تدسبارسيرستاتيوبجيكت)
في System.Data.SqlClient.SqlCommand.FinishExecuteReader (SqlDataReader ds، رونبيهافيور رونبيهافيور، ريسيتوبتيونسترينج سلسلة)
في System.Data.SqlClient.SqlCommand.RunExecuteReaderTds (كمدبيهافيور كوماندبيهافيور، رونبيهافيور رونبيهافيور، ريتورنستريم منطقية، منطقية المتزامن)
في System.Data.SqlClient.SqlCommand.RunExecuteReader (كمدبيهافيور كوماندبيهافيور، رونبيهافيور رونبيهافيور، ريتورنستريم المنطقية، الأسلوب سلسلة، نتيجة دباسينكريسولت)
في System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery (دباسينكريسولت نتيجة سلسلة methodName، سيندتوبيبي منطقية)
في System.Data.SqlClient.SqlCommand.ExecuteNonQuery()
في TVPApp.Program.Main (سلسلة وسائط [])


يتم تسجيل خطأ يؤدي عدم جدولة جنبا إلى جنب مع رسالة خطأ مشابهة للرسالة التالية في سجل أخطاء SQL Server:

< تاريخ >< الوقت > "استخدام الخادم" 'dbghelp.dll' الإصدار '4.0.5'
ملقم الوقت > < تاريخ >< * * * تعذر الحصول على سياق مؤشر الترابط ل spid #
<Date><Time> Server * *******************************************************************************
ملقم الوقت > < تاريخ >< *
ملقم الوقت > < تاريخ >< * بدء تفريغ المكدس:
ملقم الوقت > < تاريخ >< * spid < تاريخ >< الوقت > #
ملقم الوقت > < تاريخ >< *
ملقم الوقت > < تاريخ >< * لا يؤدي جدولة
ملقم الوقت > < تاريخ >< *
<Date><Time> Server * *******************************************************************************
يتم "توقيع الرصة ملقم" الوقت > < تاريخ >< التفريغ 0x000000000000002C
رمز عودة عملية تفريغ "الخارجية ملقم" الوقت > < تاريخ >< 0x20000001.
عملية التفريغ الخارجية إرجاع أية أخطاء.
عملية الملقم الوقت > < تاريخ >< 0:0:0 (0x1670) العامل 0x0000000004EDE160 يبدو غير التسلم في 5 "جدولة". مؤشر الترابط وقت الإنشاء: 13014210386757. : مؤشر ترابط تقريبا وحدة المعالجة المركزية kernel 0 مللي ثانية، السيدة 70106 المستخدم "استخدام عملية" 16 في المائة. خمول النظام 77 في المائة. الفاصل الزمني: السيدة 70140
عملية الملقم الوقت > < تاريخ >< 0:0:0 (0x1670) العامل 0x0000000004EDE160 يبدو غير التسلم في 5 "جدولة". مؤشر الترابط وقت الإنشاء:

السبب

تحدث هذه المشكلة نظراً لحدوث خطأ في مشغل قاعدة بيانات SQL Server 2012. أعمدة النص في TVP تنفيذ بإدراج سلاسل أو المخازن المؤقتة، وزيادة عدد الصفوف التي يزيد عدد المخازن المؤقتة. ومع ذلك، عملية تحرير المخازن المؤقتة تستغرق وقتاً طويلاً. لذلك، يتم إنشاء خطأ ما يؤدي عدم جدولة عند تحرير وتقليص العمليات تحدث.

ملاحظة: عولجت مشكلة مماثلة في مقالة قاعدة معارف Microsoft التالية. حزمة التحديث التراكمي الموضح في المقالة غير عن مسألة مهلة استعلام.

إصلاح 2520808 : لا يؤدي خطأ "جدولة" عند تشغيل استعلام يستخدم TVP في SQL Server 2008 أو في SQL Server 2008 R2 إذا تم استخدام منشئ ملفات التعريف SQL أو أحداث توسيع ملقم SQL

الحل

معلومات التحديث التراكمي

حزمة التحديث التراكمي 5 لحزمة الخدمة service Pack 1 (SP1) SQL Server 2012

تم إصدار الإصلاح الخاص بهذه المشكلة أولاً في 5 التحديث التراكمي. لمزيد من المعلومات حول كيفية الحصول على حزمة التحديث التراكمي ل SQL Server 2012، انقر فوق رقم المقالة التالي لعرضها في "قاعدة المعارف ل Microsoft":

2861107 التراكمية حزمة 5 تحديث ل SQL Server 2012ملاحظة: لأن البنيات تراكمية، يحتوي كل إصدار إصلاح جديد على كافة الإصلاحات العاجلة وإصدار تصحيح كافة تصحيحات الأمان التي تم تضمينها مع SQL Server 2012 السابقة. نوصي بأن تنظر في تطبيق أحدث إصدار للإصلاح الذي يحتوي على هذا الإصلاح العاجل. لمزيد من المعلومات، انقر فوق رقم المقالة التالية لعرضها في "قاعدة معارف Microsoft":

2772858 بناء SQL Server 2012 التي تم إصدارها بعد إصدار SQL Server 2012 Service Pack 1

الحل البديل

للتغلب على هذه المشكلة، استخدم إحدى الطرق التالية:

  • لا تستخدم منشئ ملفات التعريف SQL أو أحداث توسيع ملقم SQL.

  • انقر لإلغاء تحديد RPC: بدء و RPC: إكمال خانات الاختيار في تعريف التتبع.

مزيد من المعلومات

لا ينطبق هذا الإصلاح إلى SQL Server 2008 أو SQL Server 2008 R2 عند نشر قاعدة المعارف هذه. إذا كان أي من المستخدمين تواجه نفس المشكلة في SQL Server 2008 أو SQL Server 2008 R2 حتى بعد قيام المستخدمون بتطبيق الحزمة الموضحة في المقالة التالية، التحقق من صحة حالة مهلة استعلام وتحديد ما إذا كان يمكن حل المهلة. وإلا، تقديم طلب تطبيق هذا الإصلاح إلى SQL Server 2008 أو SQL Server 2008 R2.

إصلاح 2520808 : لا يؤدي خطأ "جدولة" عند تشغيل استعلام يستخدم TVP في SQL Server 2008 أو في SQL Server 2008 R2 إذا تم استخدام منشئ ملفات التعريف SQL أو أحداث توسيع ملقم SQL

معلومات مكدس الاستدعاءات

sqlmin!CLinkedMap<__int64,CCheckReadersAndWriters::CCounts>::FLookup+0x29sqlmin!CCheckReadersAndWriters::Release+0x69
sqlmin!CMainIlb::{dtor}+0x3d
sqlmin!CMainIlb::`scalar deleting destructor'+0x3d
sqlmin!CBlobHandleFactoryMain::ReleaseILockBytes+0x13
sqlmin!CMainIlb::Release+0xf0
sqllang!CTraceRpcBinaryStream::~CTraceRpcBinaryStream+0x80
sqllang!CTraceTvpData::{dtor}+0x14
sqllang!CTraceTvpData::`scalar deleting destructor'+0x1e
sqllang!CRpcTraceHelper::CleanUpTraceTvpData+0x33
sqllang!CRpcTraceHelper::~CRpcTraceHelper+0x70
sqllang!CRPCExecEnv::~CRPCExecEnv+0x2ab
sqllang!CRPCExecEnv::`scalar deleting destructor'+0x14
sqllang!process_request+0x10b1
sqllang!process_commands+0x51c
sqldk!SOS_Task::Param::Execute+0x21e
sqldk!SOS_Scheduler::RunTask+0xa8
sqldk!SOS_Scheduler::ProcessTasks+0x299
sqldk!SchedulerManager::WorkerEntryPoint+0x261
sqldk!SystemThread::RunWorker+0x8f
sqldk!SystemThreadDispatcher::ProcessWorker+0x3c8
sqldk!SchedulerManager::ThreadEntryPoint+0x236
kernel32!BaseThreadInitThunk+0xd
ntdll!RtlUserThreadStart+0x1d
sqlmin!CLinkedMap<__int64,CCheckReadersAndWriters::CCounts>::FDelete+0x34sqlmin!CCheckReadersAndWriters::Release+0xfb
sqlmin!CMainIlb::{dtor}+0x3d
sqlmin!CMainIlb::`scalar deleting destructor'+0x3d
sqlmin!CBlobHandleFactoryMain::ReleaseILockBytes+0x13
sqlmin!CMainIlb::Release+0xf0
sqllang!CTraceRpcBinaryStream::~CTraceRpcBinaryStream+0x80
sqllang!CTraceTvpData::{dtor}+0x11
sqllang!CRpcTraceHelper::CleanUpTraceTvpData+0x55
sqllang!CRpcTraceHelper::TracePostExec+0x1bf
sqllang!CRPCExecEnv::OnExecFinish+0xaa
sqllang!CProtocolHeaderInfo::{dtor}+0xffffffff`ffb158e2
sqllang!process_request+0x764
sqllang!process_commands+0x51c
sqldk!SOS_Task::Param::Execute+0x21e
sqldk!SOS_Scheduler::RunTask+0xa8
sqldk!SOS_Scheduler::ProcessTasks+0x29a
sqldk!SchedulerManager::WorkerEntryPoint+0x261
sqldk!SystemThread::RunWorker+0x8f
sqldk!SystemThreadDispatcher::ProcessWorker+0x3c8
sqldk!SchedulerManager::ThreadEntryPoint+0x236
kernel32!BaseThreadInitThunk+0x1a
ntdll!RtlUserThreadStart+0x1d

الحالة

أقرت Microsoft أن هذه مشكلة في منتجات Microsoft المسردة في قسم "ينطبق على".

Author: jannaw
Writer: v-yipli
المراجع التقني: برادم جانو; هوجان
Editor: v-mordew

هل تحتاج إلى مزيد من المساعدة؟

الخروج من الخيارات إضافية؟

استكشف مزايا الاشتراك، واستعرض الدورات التدريبية، وتعرف على كيفية تأمين جهازك، والمزيد.

تساعدك المجتمعات على طرح الأسئلة والإجابة عليها، وتقديم الملاحظات، وسماعها من الخبراء ذوي الاطلاع الواسع.

هل كانت المعلومات مفيدة؟

ما مدى رضاك عن جودة اللغة؟
ما الذي أثّر في تجربتك؟
بالضغط على "إرسال"، سيتم استخدام ملاحظاتك لتحسين منتجات Microsoft وخدماتها. سيتمكن مسؤول تكنولوجيا المعلومات لديك من جمع هذه البيانات. بيان الخصوصية.

نشكرك على ملاحظاتك!

×