Tôi có một cụm Mongo với 2 mảnh, RS1 và RS2. RS1 có khoảng 600G (*), RS2 khoảng 460G. Một vài phút trước, tôi đã thêm một mảnh vỡ mới, RS3. Khi tôi kết nối với mongos và kiểm tra tình trạng, đây là những gì tôi thấy:MongoDB: phân đoạn mới xuất hiện, nhưng không hiển thị nội dung. Đây có phải là dự kiến không?
mongos> db.printShardingStatus()
--- Sharding Status ---
sharding version: { "_id" : 1, "version" : 3 }
shards:
{ "_id" : "RS1", "host" : "RS1/dbs1d1:27018" }
{ "_id" : "RS2", "host" : "RS2/dbs1d2:27018" }
{ "_id" : "RS3", "host" : "RS3/dbs3a:27018" }
databases:
{ "_id" : "admin", "partitioned" : false, "primary" : "config" }
{ "_id" : "demo", "partitioned" : false, "primary" : "RS1" }
{ "_id" : "cm_prod", "partitioned" : true, "primary" : "RS1" }
cm_prod.profile_daily_stats chunks:
RS2 16
RS1 16
too many chunks to print, use verbose if you want to force print
cm_prod.profile_raw_stats chunks:
RS2 157
RS1 157
too many chunks to print, use verbose if you want to force print
cm_prod.video_latest_stats chunks:
RS1 152
RS2 153
too many chunks to print, use verbose if you want to force print
cm_prod.video_raw_stats chunks:
RS1 3257
RS2 3257
too many chunks to print, use verbose if you want to force print
[ ...various unpartitioned DBs snipped...]
Vì vậy, RS3 mảnh mới xuất hiện trong danh sách các mảnh vỡ, nhưng không phải trong danh sách "có bao nhiêu khối không mỗi phân đoạn có" . Tôi đã dự kiến nó sẽ xuất hiện trong danh sách đó với tổng số là 0 cho tất cả các bộ sưu tập được phân loại.
Đây có phải là hành vi mong đợi sẽ tự sắp xếp nếu tôi muốn một chút không?
tôi nhận được kết quả như sau, mà dường như sai (định dạng cho mức độ dễ đọc): 'mongos> sử dụng cấu hình chuyển sang db config mongos> db.settings.find ({_id: "balancer"}) mongos> db.locks.find ({_id: "balancer"}); { "_id": "cân bằng", "quá trình": "dbs1d1: 27.017: 1343957738: 1804289383", "nhà nước": 2, "ts": ObjectId ("50400347f7448e409c964af3"), "khi": ISODate ("2012-08-31T00: 20: 23.879Z "), " người ":" dbs1d1: 27017: 1343957738: 1804289383: Số dư: 846930886 ", " tại sao ":" làm tròn cân bằng "}' – dstorrs
Argh, không thể quản lý dễ đọc. Dưới đây là tóm tắt: db.settings.find ({_id: "balancer"}) không trả về gì cả. Db.locks.find ({_id: "balancer"}); trả về một hàng cho biết dbs1d1 (tên thay thế cho dbs1a) sở hữu khóa Trên phân đoạn mới, db.chunks.find ({shard: "RS3"}). count() trả về 0. – dstorrs
... Aaand, đã viết rằng, nó bây giờ bắt đầu xuất hiện. thấy điều này trong các bản ghi trên hộp mới (dbs3a), mà nói rằng di chuyển chunk là không (cắt để phù hợp): [Balancer] di chuyển chunk ns: cm_prod.video_latest_stats di chuyển (ns: cm_prod.vid eo_latest_stats tại: RS2: RS2/dbs1d2: 27018 ... RS2: RS2/dbs1d2: 27018 -> RS3: RS3/dbs3a: 27018 Thu Aug 30 17:37:06 [Balancer] moveChết quả kết quả: {nguyên nhân: {errmsg: "di chuyển đã được tiến hành", ok: 0.0}, errmsg: "moveChunk không tham gia TO-shard trong chuyển dữ liệu: di chuyển đã được tiến hành", ok: 0.0} – dstorrs