Tóm tắt
Các môi trường chạy số lượng giao dịch cơ sở dữ liệu lớn trên phiên bản Microsoft SQL Server 2019 có thể tạo ra sự ganh thuận trục nghiêm trọng. Sự bất đồng thường được quan sát thấy trên các hệ thống cao cấp sử dụng bộ xử lý thế hệ mới hơn.
Các điều kiện sau đây có thể được quan sát liên quan đến sự ganh hợp khóa quay nghiêm trọng:
-
Thường được quan sát trên phần cứng hiện đại, đặc biệt là bộ xử lý Intel Skylake. Dữ liệu này cũng có thể được quan sát trên các bộ xử lý hiện đại khác.
-
Thường quan sát thấy trên các hệ thống có nhiều bộ xử lý.
-
Môi trường có thể có nhiều người dùng đồng thời hơn, chẳng hạn như khối lượng công việc nhiệm vụ quan trọng, rất giao dịch.
-
Các triệu chứng bao gồm mức sử dụng CPU cao bất ngờ và nhiều vòng quay và sự kiện backoff cho một loại spinlock cụ thể, và số lần quay trên mỗi va chạm cao hơn.
Trạng thái
Microsoft đã xác nhận đây là sự cố trong các sản phẩm của Microsoft được liệt kê trong phần "Áp dụng cho".
Giải pháp
Cải tiến khóa quay lần đầu tiên được cung cấp trong Bản cập nhật Tích lũy 2 cho SQL Server 2019. Các cải tiến bổ sung được thực hiện trong các bản cập nhật tích lũy sau đây SQL Server:
Chúng tôi khuyên bạn nên áp dụng bản cập nhật tích lũy mới nhất trong danh sách này để giải quyết các vấn đề cạnh nhau về spinlock.
Quan trọng: Để có thể khắc phục sự cố khóa quay, cờ theo dõi 8101 phải được bật sau khi bạn áp dụng một trong các CU từ danh sách này.
Giới thiệu về các bản cập nhật tích lũy cho SQL Server
Mỗi bản cập nhật tích lũy mới dành cho SQL Server sẽ chứa tất cả các bản cập nhật nóng và tất cả các bản sửa lỗi bảo mật được bao gồm trong bản cập nhật tích lũy trước đó. Xem các bản cập nhật tích lũy mới nhất dành cho doanh SQL Server:
Gỡ rối
Để khắc phục sự cố tranh nhau spinlock, hãy xem các bài viết sau đây để biết thông tin chuyên sâu về cách xác định và giải quyết các vấn đề liên quan đến cpu cao và tranh nhau spinlock trong các ứng SQL Server:
Tham khảo
Tìm hiểu về thuật ngữ mà người dùng Microsoft để mô tả các bản cập nhật phần mềm.
sys.dm_os_spinlock_stats (Transact-SQL) | Microsoft Tìm hiểu
DBCC TRACEON - Theo dõi cờ (Transact-SQL)
Tuyên bố từ chối trách nhiệm thông tin của bên thứ ba
Các sản phẩm của bên thứ ba thảo luận trong bài viết này được sản xuất bởi các công ty độc lập với Microsoft. Microsoft không đảm bảo, bằng ngụ ý hay theo cách khác, về hiệu suất hoặc độ tin cậy của các sản phẩm này.