当我通过createIndex或ensureIndex方法创建索引时,我的node.js应用崩溃了,但未提供发生错误的任何详细信息。
我也注意到我所有的代码都可以在我的本地主机mongodb上很好地工作,直到我使用远程mongdb地图集副本集为止。
Node.js:8.5.0 Mongodb:3.6.4 Node.js的Mongodb驱动程序:3.0.8
示例代码(但我尝试了不同的实现变体,没有任何帮助):
db.collection('stars').ensureIndex({name: 1}, { unique: true });
Run Code Online (Sandbox Code Playgroud)
我已经在监听uncaughtException和unhandledRejection事件,但是在崩溃时它们不会触发。
我该怎么做以获取详细信息或摆脱此错误?
谢谢你的帮助!
我将mongodb驱动程序更新为版本3.1.0,并最终收到错误消息,其中描述了导致该问题的原因。根据错误消息:“ 字段“ retryWrites”对于索引规范无效 ”。因此,我认为问题出在此字段中,我曾经将其添加到连接uri字符串中。删除该字段后,我摆脱了这个问题。