问题描述
我有一个数据大小为 27G 的表(磁盘空间为 100G)。我需要在一个子字段上创建一个索引,它是一个 unix 时间戳。但是shell命令自动退出,没有任何反应。日志消息显示:“正在删除未完成的索引”。该过程停止并回滚。我找不到对此的任何解释..想知道为什么会发生这种情况,有什么解决方案吗?还是我必须创建一个带有索引的新空表,然后将数据复制到它?
命令:
db.trans.createIndex({"order.time":1},{background:true})
最后几条日志记录:
{"t":{"$date":"2021-03-29T14:16:15.006+00:00"},"s":"I","c":"-","id":51773,"ctx":"IndexBuildsCoordinatorMongod-0","msg":"progress meter","attr":{"name":"Index Build: scanning collection","done":1449500,"total":23289059,"percent":6}}
{"t":{"$date":"2021-03-29T14:16:27.862+00:00"},"done":1709900,"percent":7}}
{"t":{"$date":"2021-03-29T14:16:39.939+00:00"},"c":"STORAGE","id":22256,"ctx":"initandlisten","msg":"Dropping unfinished index","attr":{"namespace":"products.trans","index":"order.time_1"}}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)