Chúng tôi đã thử nghiệm trên SQL Server 2014 khi chúng tôi có 10 cơ sở dữ liệu, 100 lược đồ khác nhau trong mỗi cơ sở dữ liệu, 10 bảng nhỏ (~ 50 hàng) trong mỗi lược đồ (tổng cộng 10 nghìn bảng) và chúng tôi đã tạo các chỉ mục toàn văn bản trên tất cả các các bảng trong tất cả các cơ sở dữ liệu này đồng thời.
Trong vài phút, chúng tôi thấy rằng SQL Server đã dừng để chấp nhận bất kỳ kết nối nào (ngoại trừ ADMIN:.
kết nối). Nếu chúng tôi khởi động lại máy chủ, chúng tôi có thể kết nối, nhưng đôi khi nó lại bị treo. Sau một số điều tra, chúng tôi thấy rằng nguyên nhân là do tiêu thụ tất cả các luồng làm việc, dm_os_tasks
và dm_os_waiting_tasks
cho chúng tôi thấy rằng có rất nhiều FT_MASTER_MERGE
chờ đợi trong SUSPENDED
trạng thái. Chúng tôi đã nói rằng "Toàn văn bản đang chờ hoạt động hợp nhất chính", nhưng không tìm thấy thêm thông tin thực tế nào về nó.
Chúng tôi đã thử các cấu hình danh mục toàn văn bản khác nhau: một danh mục cho mỗi DB, một danh mục cho mỗi lược đồ, một danh mục cho mỗi chỉ mục. Dù sao máy chủ treo với tất cả các nhiệm vụ bị đình chỉ.
Nguyên nhân sâu xa của sự chờ đợi là gì, làm thế nào điều này có thể được sửa chữa / giảm thiểu?
Và cách được khuyến nghị để kích hoạt toàn văn trên một số lượng lớn các bảng như vậy là gì?