Mongodb createIndex 无故中断

问题描述

我有一个数据大小为 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 (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...