Triệu chứng
Trong môi trường Microsoft SQL Server 2016, bạn xử lý nhiều phân vùng của một bảng song song. Khi bạn theo dõi tiến độ, bạn nhận thấy sự kiện mã hóa lại cho ít nhất một trong các cột. Trong tình huống này, thao tác xử lý có thể không thành công với lỗi ngoại lệ. Đôi khi, việc xử lý có thể hoàn tất thành công nhưng sau đó truy vấn tiếp theo không có lỗi ngoại lệ tương tự như sau:
Ngoại lệ không mong muốn xảy ra. Ngoại lệ không mong muốn xảy ra. (Dịch vụ phân tích Microsoft SQL Server 2016) Vị trí chương trình: tại Microsoft. AnalysisServices. Adomtclient. Adomnhconnection. XmlaClientProvider. Microsoft. AnalysisServices. Adomnhclient. IExecuteProvider. ExecuteTabular (CommandBehavior Behavior, ICommandContentProvider contentProvider, Adomipropertycollection commandProperties, IDataParameterCollection) tại Microsoft. AnalysisServices. Adomnclient. Adomccommand. ExecuteReader (hành vi CommandBehavior) tại Microsoft. AnalysisServices. Adomnclient. Adomccommand. ExecuteReader () tại Microsoft. ReportingServices. QueryDesigners. ASDesigner. QueryBuilderClientControl. QueryExec. ThreadExecution ()
Lưu ý Đôi khi vấn đề này xảy ra sau khi xử lý xong và các truy vấn đang được thực hiện đối với dữ liệu được xử lý.
Giải pháp
Thông tin Cập Nhật tích lũy
Bản sửa lỗi cho sự cố này được đưa vào bản Cập Nhật tích lũy sau đây cho SQL Server:
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 đó. Kiểm tra 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
Để giải quyết vấn đề này, hãy thực hiện một trong các thao tác sau:
-
Xác định cột nào cần có mã hóa lại và dùng phân vùng giả ở đầu để tạo giá trị sẽ ép buộc mã hóa Hash trong giai đoạn phát hiện. Phân vùng giả phải là người dùng được sử dụng để chọn mã hóa trước khi theo sau. Sau khi tất cả các phân vùng đã được xử lý, bạn có thể xóa hoặc xóa phân vùng giả.
-
Dùng xử lý nối tiếp thay vì xử lý song song.
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".
Thông tin Bổ sung
Xử lý song song của phân vùng dạng bảng có lô-gic sau đây:
-
Sử dụng dữ liệu trong một phân vùng để xác định mã hóa (giá trị hoặc băm) của các cột.
-
Sau khi mã hóa được chọn, các phân vùng khác có thể bắt đầu xử lý song song.
-
Nếu việc mã hóa giá trị được chọn và khi các hàng đang được tải, một giá trị có thể gặp phải không khớp với bảng tính giá trị mã hóa. Trong trường hợp này, toàn bộ cột phải được mã hóa vào đề án mã hóa băm.
-
Thao tác này mã hóa lại (chuyển đổi mã hóa giá trị thành mã hóa băm) gặp vấn đề khi các phân vùng khác đang được xử lý cùng một lúc.
Tham khảo
Tìm hiểu về thuật ngữ mà Microsoft sử dụng để mô tả các bản cập nhật phần mềm.