Triệu chứng
Hãy cân nhắc các trường hợp sau:
- Bạn bật Microsoft SQL Server Service Broker (SSB) trong cơ sở dữ liệu Nhóm AlwaysOn của SQL Server.
- Bạn tắt và khởi động lại cơ sở dữ liệu.
- Đảm bảo rằng nhận được xác nhận (ACK) thành công.
Trong kịch bản này, thông báo không được loại bỏ khỏi hàng đợi truyền ngay cả khi đã nhận được ACK thành công.
Nguyên nhân
Sự cố này xảy ra vì khi bạn khởi động cơ sở dữ liệu sau khi tắt sạch, SQL Server không kiểm tra xem tác vụ xóa bị trì hoãn trong hàng đợi truyền dẫn có thể dùng lại hay không. Nó giả định rằng tác vụ xóa bị trì hoãn trong hàng đợi truyền đi vẫn ok.
Giải pháp
Sự cố này được khắc phục lần đầu tiên trong bản cập nhật tích lũy tiếp theo của SQL Server.
Cập nhật tích lũy 1 cho SQL Server 2014 /en-us/help/2931693
Cập nhật tích lũy 9 cho SQL Server 2012 SP1 /en-us/help/2931078
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 chứa tất cả các bản sửa lỗi nóng và 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 SQL Server:
- Bản cập nhật tích lũy mới nhất cho SQL Server 2014
- Bản cập nhật tích lũy mới nhất cho SQL Server 2012 SP1
Giải pháp thay thế
Để khắc phục sự cố này, hãy chuyển đổi nhóm dự phòng SQL Server thành bản sao phụ (và hoàn nguyên nếu cần).
Trạng thái
Microsoft đã xác nhận rằng đây là sự cố trong các sản phẩm của Microsoft được liệt kê trong mục "áp dụng cho".