gpt4 book ai didi

node.js - mongo错误: Topology was destroyed

转载 作者:太空宇宙 更新时间:2023-11-04 01:37:13 25 4
gpt4 key购买 nike

我有一个在 Node.js 中使用 Restify 和 Mongoose 构建的 REST 服务,以及一个包含大约 30.000 个常规大小文档的集合的 mongoDB。我的 Node 服务通过 pmx 和 pm2 运行。

昨天, Node 突然开始抛出错误,并显示消息“MongoError:拓扑已损坏”,仅此而已。我不知道这是什么意思,也不知道是什么可能引发了这种情况。谷歌搜索时也找不到太多东西。所以我想我应该在这里问。

今天重新启动 Node 服务后,错误不再出现。我也在生产环境中运行其中一个,这让我感到害怕,这种情况可能在任何给定时间发生在运行在那里的设置的一个非常关键的部分......

我正在使用上述软件包的以下版本:

  • Mongoose :4.0.3
  • restify:3.0.3
  • Node :0.10.25

最佳答案

这似乎意味着 Node 服务器与 MongoDB 实例的连接在尝试写入时被中断。

看看Mongo source code that generates that error

Mongos.prototype.insert = function(ns, ops, options, callback) {
if(typeof options == 'function') callback = options, options = {};
if(this.s.state == DESTROYED) return callback(new MongoError(f('topology was destroyed')));
// Topology is not connected, save the call in the provided store to be
// Executed at some point when the handler deems it's reconnected
if(!this.isConnected() && this.s.disconnectHandler != null) {
callback = bindToCurrentDomain(callback);
return this.s.disconnectHandler.add('insert', ns, ops, options, callback);
}

executeWriteOperation(this.s, 'insert', ns, ops, options, callback);
}

这似乎与评论中引用的 Sails 问题无关,因为没有安装升级来促成崩溃或“修复”

关于node.js - mongo错误: Topology was destroyed,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54179043/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com