وتوزع Microsoft إصلاحات Microsoft SQL Server 2008 Service Pack 1 (SP1) أو Microsoft SQL Server 2008 R2 كملف واحد قابل للتنزيل. نظرا لأن الإصلاحات تراكمية، يحتوي كل إصدار جديد على كل الإصلاحات العاجلة وجميع تحديثات الأمان التي كانت مضمنة في إصدار تحديث SQL Server 2008 SP1 أو SQL Server 2008 R2 السابق.
الأعراض
يُرجى مراعاة السيناريو التالي:
- تثبيت Microsoft SQL Server 2008 Integration Services (SSIS 2008) أو Microsoft SQL Server 2008 R2 Integration Services (SSIS 2008 R2) على كمبيوتر.
- يمكنك إنشاء حزمة SSIS تحتوي على عنصري For Loop Container.
- يمكنك إنشاء متغيرين في نطاق For Loop Container لعنصري For Loop Container. للمتغيرات الاسم نفسه.
- يمكنك استخدام المتغيرات في الخصائص InitExpression وEvalExpression وAssignExpression لعناصري For Loop Container.
- يحتوي عنصرا "حاوية For Loop" على عناصر "تنفيذ مهام SQL" متعددة يتم تشغيلها بالتوازي.
- قم بتمكين إعداد نقطة التحقق لحزمة SSIS.
- تقوم بتشغيل حزمة SSIS.
- يفشل أحد عناصر تنفيذ مهمة SQL أو يتوقف أثناء تشغيل حزمة SSIS.
- يتم تشغيل حزمة SSIS مرة أخرى.
في هذا السيناريو، تكون القيمة المتغيرة لأحد عناصر تنفيذ مهمة SQL التي لم تفشل أو تتوقف غير صحيحة.
لاحظ أن عنصر "تنفيذ مهمة SQL" هذا موجود في عنصر حاوية For Loop الذي لم يفشل أو يتوقف.
على سبيل المثال، ضع في اعتبارك السيناريو المحدد التالي:
- يمكنك إنشاء حزمة SSIS تحتوي على عنصرين من عناصر حاوية For Loop. تسمى العناصر FLC01 و FLC02.
- يمكنك إنشاء متغير BatchNo ل FLC01 ومتغير BatchNo ل FLC02.
- يمكنك تعيين الخاصية InitExpression إلى @[User::BatchNo] = 0.
- قمت بتعيين الخاصية EvalExpression إلى @[User::BatchNo] < 10.
- يمكنك تعيين خاصية AssignExpression إلى @[User::BatchNo]=@[User::BatchNo]+1.
- يحتوي عنصرا "حاوية For Loop" على عناصر "تنفيذ مهمة SQL" متعددة تستخدم خطة تنفيذ متوازية.
- قم بتمكين إعداد نقطة التحقق لحزمة SSIS.
- تقوم بتشغيل حزمة SSIS.
- فشل عنصر تنفيذ مهمة SQL في FLC01 أو يتوقف.
- يتم تشغيل حزمة SSIS مرة أخرى.
في هذا السيناريو، تكون قيمة BatchNo لأحد عناصر تنفيذ مهمة SQL في FLC02 غير صحيحة.
ملاحظة تحدث هذه المشكلة أيضا في Microsoft SQL Server 2008 R2 Integration Services (SSIS 2008 R2).
السبب
تحدث هذه المشكلة بسبب خلل في منطق استعادة متغير Checkpoint.
تتم استعادة متغيرات نقطة التحقق إلى المهام الخطأ. لذلك، تتم استعادة قيمة متغير غير صحيح.
الدقة
معلومات التحديث التراكمي
SQL Server 2008 R2
تم إصدار تصحيح هذه المشكلة لأول مرة في التحديث التراكمي 11. لمزيد من المعلومات حول كيفية الحصول على حزمة التحديث التراكمي هذه ل SQL Server 2008 R2، انقر فوق رقم المقالة التالي لعرضها في "قاعدة معارف Microsoft":
2633145 حزمة التحديث التراكمي 11 ل SQL Server 2008 R2 ملاحظة نظرا لأن الإصدارات تراكمية، يحتوي كل إصدار إصلاح جديد على كل الإصلاحات العاجلة وكل إصلاحات الأمان التي كانت مضمنة في إصدار تصحيح SQL Server 2008 R2 السابق. نوصي بتطبيق أحدث إصدار تصحيح يحتوي على هذا الإصلاح العاجل في الاعتبار. للمزيد من المعلومات، انقر فوق رقم المقالة التالي لعرضها في "قاعدة معارف Microsoft":
981356 إصدارات SQL Server 2008 R2 التي تم إصدارها بعد إصدار SQL Server 2008 R2
حزمة الخدمة 1 ل SQL Server 2008 R2
تم إصدار تصحيح لهذه المشكلة لأول مرة في التحديث التراكمي 4 ل SQL Server 2008 R2 Service Pack 1. لمزيد من المعلومات حول كيفية الحصول على حزمة التحديث التراكمي هذه، انقر فوق رقم المقالة التالي لعرضها في "قاعدة معارف Microsoft":
2633146 حزمة التحديث التراكمي 4 لحزمة خدمة SQL Server 2008 R2 1Note نظرا لأن الإصدارات تراكمية، يحتوي كل إصدار إصلاح جديد على كل الإصلاحات العاجلة وكل إصلاحات الأمان التي كانت مضمنة في إصدار تصحيح SQL Server 2008 R2 السابق. نوصي بتطبيق أحدث إصدار تصحيح يحتوي على هذا الإصلاح العاجل في الاعتبار. للمزيد من المعلومات، انقر فوق رقم المقالة التالي لعرضها في "قاعدة معارف Microsoft":
2567616 إصدارات SQL Server 2008 R2 التي تم إصدارها بعد إصدار SQL Server 2008 R2 Service Pack 1
SQL Server 2008 Service Pack 2
تم إصدار تصحيح لهذه المشكلة لأول مرة في التحديث التراكمي 7 ل SQL Server 2008 Service Pack 2. لمزيد من المعلومات حول حزمة التحديث التراكمي هذه، انقر فوق رقم المقالة التالي لعرضها في "قاعدة معارف Microsoft":
2617148 حزمة التحديث التراكمي 7 ل SQL Server 2008 Service Pack 2Note نظرا لأن الإصدارات تراكمية، يحتوي كل إصدار إصلاح جديد على جميع الإصلاحات العاجلة وكل إصلاحات الأمان التي كانت مضمنة في إصدار تصحيح SQL Server 2008 السابق. توصي Microsoft بتطبيق أحدث إصدار تصحيح يحتوي على هذا الإصلاح العاجل. للمزيد من المعلومات، انقر فوق رقم المقالة التالي لعرضها في "قاعدة معارف Microsoft":
2402659 إصدارات SQL Server 2008 التي تم إصدارها بعد إصدار SQL Server 2008 Service Pack 2 تم إنشاء الإصلاحات العاجلة لنظام التشغيل Microsoft SQL Server 2008 لحزم خدمات SQL Server معينة. يجب عليك تطبيق الإصلاح العاجل SQL Server 2008 Service Pack 2 لتثبيت SQL Server 2008 Service Pack 2. بشكل افتراضي، يتم تضمين أي إصلاح عاجل يتم توفيره في حزمة خدمة SQL Server في حزمة خدمة SQL Server التالية.
حزمة التحديث التراكمي 16 ل SQL Server 2008 SP1
تم إصدار تصحيح لهذه المشكلة لأول مرة في حزمة التحديث التراكمي 16 ل SQL Server 2008 SP1. لمزيد من المعلومات حول كيفية الحصول على حزمة التحديث التراكمي هذه ل SQL Server 2008 SP1، انقر فوق رقم المقالة التالي لعرضها في "قاعدة معارف Microsoft":
2582282 حزمة التحديث التراكمي 16 ل SQL Server 2008 حزمة الخدمة 1Note نظرا لأن الإصدارات تراكمية، يحتوي كل إصدار تحديث جديد على جميع الإصلاحات العاجلة وجميع تحديثات الأمان التي كانت مضمنة في إصدار التحديث السابق من SQL Server 2008 SP1. نوصي بأن تفكر في تطبيق أحدث إصدار تحديث يحتوي على هذا الإصلاح العاجل. للمزيد من المعلومات، انقر فوق رقم المقالة التالي لعرضها في "قاعدة معارف Microsoft":
970365 إصدارات SQL Server 2008 التي تم إصدارها بعد إصدار SQL Server 2008 Service Pack 1
الحل البديل
لحل هذه المشكلة، استخدم اسم متغير مختلف لكل عنصر من عناصر حاوية For Loop.
الحالة
لقد أكدت Microsoft على أن هذه مشكلة في منتجات Microsoft المُدرجة في القسم "ينطبق على".