Như ở MongoDB 2.6, bạn sẽ không nhận được truy vấn phân đoạn được bao phủ đầy đủ vì có thêm một truy vấn để kiểm tra xem phân đoạn được đề cập có sở hữu tài liệu đó hay không (xem SERVER-5022 trong trình theo dõi vấn đề MongoDB).
mongos
bộ định tuyến lọc các tài liệu được tìm thấy trên một phân đoạn nhưng không tồn tại ở đó theo siêu dữ liệu của phân đoạn.
Tài liệu có thể tồn tại trên nhiều phân đoạn nếu:
-
Có một di chuyển theo đoạn đang tiến hành:tài liệu được sao chép từ một phân đoạn của nhà tài trợ sang một phân đoạn đích và không bị xóa khỏi phân đoạn của nhà tài trợ cho đến khi quá trình di chuyển phân đoạn hoàn tất thành công.
-
Các tài liệu đã bị "mồ côi" trên một phân đoạn do quá trình di chuyển không thành công hoặc quá trình dọn dẹp không đầy đủ. Có một
cleanupOrphaned
lệnh quản trị trong MongoDB 2.6 có thể chạy trênmongod
được phân mảnh để xóa các tài liệu mồ côi.
Giới hạn truy vấn được đề cập này được lưu ý trong Giới hạn:Các truy vấn được bao phủ trong các cụm được chia nhỏ phần của tài liệu MongoDB nhưng cũng nên được đánh dấu trong hướng dẫn về Tạo Truy vấn được Bao gồm . Tôi đã huy động được DOCS-3820 để làm cho điều này rõ ràng hơn.