KB4577976 - การแก้ไข: การบล็อกการคอมไพล์เกิดขึ้นเมื่อดําเนินการกระบวนงานที่เก็บไว้พร้อมกันจํานวนมากใน SQL Server 2017 และ 2019

นำไปใช้กับ
SQL Server 2017 Developer on Windows SQL Server 2017 Enterprise Core on Windows SQL Server 2017 Enterprise on Windows SQL Server 2017 Standard on Windows SQL Server 2019 on Windows

อาการ

สมมติว่าคุณเปิดใช้งานการปรับแต่งคิวรีโดยอัตโนมัติใน SQL Server 2017 และ 2019 เมื่อดําเนินการกระบวนการที่จัดเก็บไว้พร้อมกันจํานวนมาก คุณอาจพบสถานการณ์การบล็อก COMPILE ภายใต้เงื่อนไขต่อไปนี้:

  1. ดําเนินการกระบวนการที่จัดเก็บไว้
  2. ใช้ Query Data Store (QDS) เพื่อบังคับแผน
  3. เรียกใช้ sp_recompile บนกระบวนงานที่เก็บไว้เพื่อบังคับให้เอาแผนออกจากแคชกระบวนงาน
  4. เรียกใช้กระบวนการที่เก็บไว้พร้อมกันในเซสชันที่แยกกันจํานวนมาก

สาเหตุ

หลังจากบังคับแผนโดยใช้ Query Data Store และเอาแผนออกจากแคชกระบวนงาน แผนจะไม่ถูกแคชอีกต่อไป และการดําเนินการพร้อมกันจะมีผลในการบล็อกคอมไพล์

สถานะ

Microsoft ได้ยืนยันว่านี่เป็นปัญหาที่เกิดขึ้นกับผลิตภัณฑ์ของ Microsoft ที่แสดงไว้ในส่วน "นำไปใช้กับ"

การแก้ปัญหา

ปัญหานี้ได้รับการแก้ไขในการอัปเดตแบบสะสมต่อไปนี้สําหรับ SQL Server:

เกี่ยวกับการอัปเดตสะสมสําหรับ SQL Server:

การอัปเดตแบบสะสมใหม่แต่ละรายการสําหรับ SQL Server จะมีโปรแกรมแก้ไขด่วนและการแก้ไขข้อบกพร่องด้านความปลอดภัยทั้งหมดที่รวมอยู่ในการอัปเดตแบบสะสมครั้งก่อนหน้า ตรวจดูการอัปเดตแบบสะสมล่าสุดสําหรับ SQL Server:

การอ้างอิง

เรียนรู้เกี่ยวกับคำศัพท์ที่ Microsoft ใช้เพื่ออธิบายการอัปเดตซอฟต์แวร์