อาการ
สมมติว่าคุณใช้การจำลองแบบผสานใน Microsoft SQL Server ๒๐๑๒หรือใน Microsoft SQL Server ๒๐๑๔ ในฐานะที่เป็นส่วนหนึ่งของกระบวนการการซิงโครไนซ์ตัวแทนการผสานทำให้รุ่นใหม่ในเซสชัน ถ้ามีเหตุผลบางประการเช่นการชะงักงันหรือหมดเวลาการสร้างการทำธุรกรรมจะถูกเลือกเป็นเหยื่อการชะงักงันและทรานแซคชันจะย้อนกลับอาจมีการบล็อกขนาดใหญ่สำหรับการบล็อกแอปพลิเคชัน MSinternal_makegeneration_inprog ในเงินรุ่นที่กำลังจะเกิดขึ้นและเซสชันที่กล่าวถึงก่อนหน้านี้จะแสดงเป็นตัวบล็อกหัว
สาเหตุ
การล็อกแอปพลิเคชันที่ใช้เพื่อช่วยรักษาความปลอดภัยของกระบวนการสร้างกระบวนการเป็นการล็อกแอปพลิเคชันระดับเซสชัน เมื่อมีการตรวจพบการชะงักงันในระหว่างขั้นตอนการสร้างเฉพาะทรานแซคชันจะย้อนกลับแต่ยังไม่ได้ลงชื่อเข้าใช้เซสชัน เมื่อต้องการนำการล็อกแอปพลิเคชันระดับเซสชันไปใช้เซสชันต้องออกจากระบบ ดังนั้นเนื่องจากการออกแบบของตรรกะการลองใหม่ (เซสชันจะไม่ถูกปิดใช้งานในระหว่างการสร้างความล้มเหลวในการจำลองแบบผสาน) ถ้าการสร้างเวอร์ชันแรกล้มเหลวด้วยการชะงักงันการล็อกเซสชัน (MSinternal_makegeneration_inprog) จะไม่ได้รับการเผยแพร่ในระหว่างการย้อนกลับของทรานแซคชัน การดำเนินการนี้จะทำให้การบล็อกของการร้องขอการล็อกอยู่ในขั้นตอนการสร้างที่กำลังจะเกิดขึ้น ตัวบล็อกหัวจะแสดงเป็นการสร้างการร้องขอการสร้างครั้งแรกที่ล้มเหลวด้วยการชะงักงัน ก่อนที่โปรแกรมแก้ไขด่วน SQL Server จะล้างการล็อกสำหรับกระบวนการสร้างที่เสร็จสมบูรณ์แล้วเท่านั้น จะทำการล็อกแอปพลิเคชันเซสชัน orphaned ก่อนที่จะออกจากระบบเซสชันถ้าการชะงักงันเกิดขึ้น
การแก้ไข
ปัญหานี้ได้รับการแก้ไขครั้งแรกในการอัปเดตที่สะสมต่อไปนี้ของ SQL Server
การอัปเดตที่สะสม5สำหรับ SQL Server ๒๐๑๔ /en-us/help/3011055
การอัปเดตที่สะสม3สำหรับ SQL Server ๒๐๑๒ SP2 /en-us/help/3002049
การอัปเดตที่สะสมใหม่แต่ละรายการสำหรับ SQL Server ประกอบด้วยโปรแกรมแก้ไขด่วนทั้งหมดและการแก้ไขการรักษาความปลอดภัยทั้งหมดที่รวมอยู่ในการอัปเดตที่สะสมก่อนหน้านี้ ตรวจสอบการอัปเดตที่สะสมล่าสุดสำหรับ SQL Server:
สถานะ
Microsoft ยืนยันว่าปัญหานี้เป็นปัญหาที่เกิดขึ้นกับผลิตภัณฑ์ของ Microsoft ซึ่งมีการระบุไว้ในส่วน "นำไปใช้กับ"