尝试耗尽ShardNotFound中的分片结果

时间:2019-02-04 19:49:57

标签: mongodb sharding

我正试图耗尽碎片。我们的设置中有两个分片。最近,我们从6个以上的独立分片开始,现在分布在剩余的2个分片上。当我在shard0012上运行removeShard命令时,它进入了消耗模式,但是所有moveChunk尝试均失败。

--- Sharding Status ---
  sharding version: {
        "_id" : 1,
        "minCompatibleVersion" : 5,
        "currentVersion" : 6,
        "clusterId" : ObjectId("57459870ded3be752e8bb27b")
  }
  shards:
        {  "_id" : "shard0012",  "host" : "shard02:27054",  "state" : 1 }
        {  "_id" : "shard0016",  "host" : "shard01:27050",  "state" : 1 }
  active mongoses:
        "4.0.4" : 2
        "4.0.3" : 1
  autosplit:
        Currently enabled: yes
  balancer:
        Currently enabled:  yes
        Currently running:  no
        Failed balancer rounds in last 5 attempts:  0
        Migration Results for the last 24 hours:
                39 : Failed with error 'aborted', from shard0012 to shard0016

在我的日志中,我将看到重复的内容:

SHARDING [Balancer] Balancer move documents.fs.chunks: [{ files_id: ObjectId('574c427815c7ad47588b73a8'), n: 295 }, { files_id: ObjectId('574c427f15c7ad47588b7503'), n: 93 }), from shard0012, to shard0016 failed :: caused by :: ShardNotFound: Shard shard0014 not found

shard0014是以前在我们的设置中使用的碎片,但根据最佳实践/官方文档已将其排干并删除。

我尝试重新启动所有mongos。我也尝试过flushRouterConfig。我在当前设置中找不到对shard0014的任何引用。

有什么方法可以更新shard0012上文档中的分片元数据?

MongoDB在Windows环境中的版本4.0.4上运行。

我希望碎片会流失。所有引用的对象ID都是可搜索的,并且在插入或更新文档方面没有任何问题。

0 个答案:

没有答案