Triệu chứng
Giả định rằng bạn đã có chỉ mục không phải là một chỉ mục columnstore trong Microsoft SQL Server 2012 hoặc SQL Server 2014. Bạn chạy một truy vấn ở chế độ song song để sử dụng tính năng columnstore và truy vấn nối các chỉ mục trên nhiều cột đã gia nhập với các kết quả phía thăm dò tính toán trong biểu thức phức tạp. Trong trường hợp này, một tập kết quả không chính xác có thể xảy ra.
Nguyên nhân
Khi biểu thức được tối ưu hóa ở phía thăm dò của kết nối Hash, SQL Server giả định một thứ tự cụ thể trong các cột gia nhập băm. Thứ tự này có thể bị hỏng trong tối ưu hóa truy vấn và có thể gây ra một kết hợp băm không khớp.
Giải pháp
Vấn đề lần đầu tiên được khắc phục trong bản Cập Nhật tích lũy SQL Server sau đây:
Mỗi bản Cập Nhật tích lũy mới cho SQL Server chứa tất cả các hotfix và tất cả các bản sửa lỗi bảo mật đã được đưa vào bản Cập Nhật tích lũy trước đó. Chúng tôi khuyên bạn nên tải xuống và cài đặt các bản Cập Nhật tích lũy mới nhất cho SQL Server:
Cách giải quyết
Để khắc phục sự cố này, hãy sử dụng một trong các phương pháp sau:
-
Sử dụng hàm MAXDOP =1 gợi ý truy vấn khi bạn thực hiện truy vấn.
-
Nâng cấp lên SQL Server 2014.
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".