色々いじって確実に再現するっぽいパターンがあったのでめも。 // mongosで対象DBに入ってindex作成(いずれかをDESCに) > db.table01.ensureIndex({userId:1,targetuserId:-1}) // adminDBに入ってcollectionのSharding開始。フィールド自体は同じものを指定 > db.runCommand({shardcollection:"test2.table01",key:{userId:1,targetuserId:1}}) // index確認 > db.table01.getIndexes() [ { "name" : "_id_", "ns" : "test2.table01", "key" : { "_id" : 1 }, "v" : 0 }, { "_id" : ObjectId("4ddd1c6869