修改索引expireAfterSeconds後,負載均衡出現錯誤


  • Lv 1

    錯誤訊訊息:

    「2017-03-27T01:50:40.051+0800 [migrateThread] warning: failed to create index before migrating data. idx: { v: 1, key: { _: -1 }, name: "__-1", ns: "cswuyg_test.cswuyg_test", expireAfterSeconds: 5237000 } error: IndexOptionsConflict Index with name: __-1 already exists with different options
    檢查moveChunk的兩個shard,發現都一致,可能存在緩存,

    重啟所有shard就正常

    請問還有甚麼原因導致錯誤嗎? 或一定重啟shard才能復原嗎?


  • 大中华区MongoDB顾问

    应该是由于某种原因更新索引的时候新的索引没有在所有的shard上生效,具体原因要看当时的日志来分析。作为解决方案:

    1. 如果删除索引不会造成很大的影响,建议从mongos直接删除掉这个索引然后重建。操作上会比较容易

    2. 影响更小的做法是找到索引没有更新的那些shard,以合适的参数重建这个索引。操作会更麻烦。


登录后回复
 

与 萌阔论坛 的连接断开,我们正在尝试重连,请耐心等待