KB2933780 - KHẮC PHỤC: Thông báo không được loại bỏ khỏi hàng đợi truyền ngay cả khi ACK đã được nhận thành công trong một nhóm sẵn sàng AlwaysOn trong SQL Server 2012 hoặc SQL Server 2014

Áp dụng cho
SQL Server 2012 Developer SQL Server 2012 Enterprise SQL Server 2012 Standard SQL Server 2014 Developer - duplicate (do not use) SQL Server 2014 Enterprise - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use)

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:

      

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