Triệu chứng

Sau khi áp dụng Bản cập nhật Tích lũy 26 (CU26) của SQL Server 2016 (SP3) hoặc SQL Server 2017 ( CU26) và bạn chạy quy trình dọn dẹp theo dõi thay đổi được lưu trữ, sp_flush_commit_table_on_demand hoặc sp_flush_CT_internal_table_on_demandhoặc nếu quá trình tự dọn sạch theo dõi thay đổi chạy, bạn sẽ nhận được thông báo lỗi sau đây:

Msg 8114, Level 16, State 1, Procedure sp_add_ct_history, Line LineNumber

Error converting data type numeric to int.

Ngoài ra, các lỗi sau đây có thể được ghi nhật ký trong SQL Server nhật ký lỗi:

DateTime spidNum     Error: 22122, Severity: 16, State: 1.

DateTime spidNum     Change Tracking autocleanup failed on side table of "table_name". If the failure persists, use sp_flush_CT_internal_table_on_demand to clean up expired records from its side table.

Sau khi bạn gặp lỗi này, hãy thay đổi tính năng tự động dọn sạch không thể dọn sạch các mục nhập từ bảng bên hoặc bảng syscommittab.

Nguyên nhân

SQL Server 2016 SP3 và SQL Server 2017 CU26 đã giới thiệu bảng mới, dbo. MSchange_tracking_history, và một thủ tục lưu trữ mới, sys.sp_add_ct_history, để ghi lại lịch sử dọn dẹp theo dõi thay đổi. Bảng này có một cột, cleanup_version,hiện được khai báo là kiểu dữ liệu INT. Thủ sys.sp_add_ct_history lưu trữ có một tham @cleanup_version, cũng được khai báo là INT. Trên một hệ thống bận rộn sử dụng chức năng theo dõi thay đổi, phiên bản dọn dẹp có thể đi qua một phạm vi INT trong một khoảng thời gian nhất định. Sau đó, khi dọn sạch theo dõi thay đổi chạy, ứng dụng sẽ cố gắng chèn một giá trị BIGINT vào cột INT của bảng này. Điều này tạo ra lỗi được mô tả trong phần "Triệu chứng".

Giải pháp

Sự cố này đã được khắc phục trong các bản cập nhật tích lũy sau đây SQL Server:

Cập nhật Tích lũy 27 cho SQL Server 2017

Mỗi bản cập nhật tích lũy mới cho SQL Server chứa tất cả hotfix và tất cả các bản sửa lỗi bảo mật được tích hợp 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 cho mọi SQL Server:

Bản cập nhật tích lũy mới nhất SQL Server 2017

Thông tin hotfix theo yêu cầu:

Sự cố này được khắc phục trong hotfix theo yêu cầu sau đây SQL Server:

Cách giải quyết

Nếu bạn gặp phải sự cố này, hãy hoàn nguyên về bản dựng trước đó bằng cách gỡ cài đặt SQL Server 2016 SP3 hoặc SQL Server 2017 CU26. Microsoft đang tích cực điều tra sự cố này, đồng thời sẽ cập nhật bài viết này để biết thêm thông tin cũng như hướng dẫn bổ sung khi có thông tin đó.

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".

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.

Bạn cần thêm trợ giúp?

Phát triển các kỹ năng của bạn
Khám phá nội dung đào tạo
Sở hữu tính năng mới đầu tiên
Tham gia Microsoft dùng nội bộ

Thông tin này có hữu ích không?

Bạn hài lòng đến đâu với chất lượng dịch thuật?
Điều gì ảnh hưởng đến trải nghiệm của bạn?

Cảm ơn phản hồi của bạn!

×