version: 2.2.0
shard num : 32
replica num : 4
what i do is a pre split an empty collection
when i split a chunk , and move a chunk to a shard , the mongo shell hung
in the to shard, i can see the log:
Thu Mar 6 20:14:50 [migrateThread] warning: migrate commit waiting for 3 slaves for 'archive.archive' { uid: -2130706432 } -> { uid: MaxKey } waiting for: 53184087:5
in the from shard, i can see the log:
Thu Mar 6 18:54:37 [conn4773458] moveChunk data transfer progress: { active: true, ns: "archive.archive", from: "shard3_2/
192.168.130.13:15001,
192.168.130.14:15002,
10.1.2.13:15003", min: { uid: -2130706432 }, max: { uid: MaxKey }, shardKeyPattern: { uid: 1 }, state: "catchup", counts: { cloned: 0, clonedBytes: 0, catchup: 0, steady: 0 }, ok: 1.0 } my mem used: 0
about the to shard log i show above, i find the optime int the oplog:
shard1_1:PRIMARY> db.oplog.rs.find({ts:Timestamp(1394098311000, 5)}).sort({$natual:-1}).limit(1)
{ "ts" : Timestamp(1394098311000, 5), "h" : NumberLong("-1059036026990639681"), "op" : "i", "ns" : "archive.system.indexes", "o" : { "v" : 1, "key" : { "uid" : 1, "cate" : 1 }, "ns" : "archive.archive", "name" : "uid_1_cate_1" } }
however,when i see its secondary:
shard1_1:PRIMARY> db.printSlaveReplicationInfo()
syncedTo: Thu Mar 06 2014 20:18:08 GMT+0800 (CST)
= 3 secs ago (0hrs)
syncedTo: Thu Mar 06 2014 20:18:08 GMT+0800 (CST)
= 3 secs ago (0hrs)
syncedTo: Thu Mar 06 2014 17:31:51 GMT+0800 (CST)
= 9980 secs ago (2.77hrs)
yes
192.168.115.223:13004 delay for 2.77 hours, but i always set it delay for 7200s. and i have split and move chunk for many time in the pre 1 year
the move chunk process come to the end after 10 hours, and the chunk finally not move to the to shard~~~ why??