首页 > 解决方案 > MongooseError: operation `.deleteOne()`, `.deleteMany()`, 在我的不和谐机器人启动时。猫鼬 v5.12.14

问题描述

这很奇怪,今天才开始发生。我以前从来没有遇到过 mongo 抛出这样的错误的问题,但是在尝试时mongoose.connect我现在一直得到这个错误:

MongooseError: Operation `dbs.deleteOne()` buffering timed out after 10000ms
    at Timeout.<anonymous> (C:\Users\...\...\...\Comicallybot2.0\node_modules\mongoose\lib\drivers\node-mongodb-native\collection.js:198:23)
    at listOnTimeout (internal/timers.js:557:17)
    at processTimers (internal/timers.js:500:7)
MongooseError: Operation `xps.deleteMany()` buffering timed out after 10000ms
    at Timeout.<anonymous> (C:\Users\...\...\...\Comicallybot2.0\node_modules\mongoose\lib\drivers\node-mongodb-native\collection.js:198:23)
    at listOnTimeout (internal/timers.js:557:17)
    at processTimers (internal/timers.js:500:7)
MongooseError: Operation `dbs.deleteOne()` buffering timed out after 10000ms
    at Timeout.<anonymous> (C:\Users\...\...\...\Comicallybot2.0\node_modules\mongoose\lib\drivers\node-mongodb-native\collection.js:198:23)
    at listOnTimeout (internal/timers.js:557:17)
    at processTimers (internal/timers.js:500:7)
MongooseError: Operation `xps.deleteMany()` buffering timed out after 10000ms
    at Timeout.<anonymous> (C:\Users\...\...\...\Comicallybot2.0\node_modules\mongoose\lib\drivers\node-mongodb-native\collection.js:198:23)
    at listOnTimeout (internal/timers.js:557:17)
    at processTimers (internal/timers.js:500:7)
MongooseError: Operation `dbs.deleteOne()` buffering timed out after 10000ms
    at Timeout.<anonymous> (C:\Users\...\...\...\Comicallybot2.0\node_modules\mongoose\lib\drivers\node-mongodb-native\collection.js:198:23)
    at listOnTimeout (internal/timers.js:557:17)
    at processTimers (internal/timers.js:500:7)
MongooseError: Operation `xps.deleteMany()` buffering timed out after 10000ms
    at Timeout.<anonymous> (C:\Users\...\...\...\Comicallybot2.0\node_modules\mongoose\lib\drivers\node-mongodb-native\collection.js:198:23)
    at listOnTimeout (internal/timers.js:557:17)
    at processTimers (internal/timers.js:500:7)
10/26/2021, 12:11:57 AM
Successfully connected to Mongodb
Successfully connected to Erela

我有 2 个模式:db 和 xp,因此当我打开 compass 并打开我的 ComicallyBOT2 数据库时会显示 dbs 和 xps。我的代码很简单..

const mongoose = require("mongoose");
const { dbSetup } = require("../../dbFunctions.js");

module.exports = client => {
    var time = new Date();
    console.log(time.toLocaleString('en-US', { month: 'numeric', day: 'numeric', year: 'numeric', hour: 'numeric', minute: 'numeric', second: 'numeric', hour12: true }));  

    global.activities = [`${client.guilds.cache.size} servers!`, `${client.channels.cache.size} channels!`, `${client.users.cache.size} users!`], i = 0;
    setInterval(() => client.user.setActivity(`${prefix}help | ${activities[i++ % activities.length]}`, { type: "PLAYING" }), 7500)

    mongoose.connect("mongodb://localhost/ComicallyBOT2", { useUnifiedTopology: true, useNewUrlParser: true }).then(console.log("Successfully connected to Mongodb"));

    dbSetup(client);

    client.music.init(client.user.id);
}

就像我说的,这只是随机开始发生的,几个月没有这个问题,确保我没有更新版本或任何东西。我没有:27017以前的,所以我尝试了,但这并没有改变任何东西。

mongoose.connect当我注释掉其余部分并得到相同的错误时,这些错误来自该行。我想更新到最新版本的 mongoose,但是,我尝试并仍然遇到相同的超时错误,然后是大量其他错误或通知。

该机器人现在也需要永远启动。它会在运行后几乎 2 秒内启动node .,现在大约 20 秒后它最终会启动。我拥有的所有功能都可以正常工作。我仍然可以使用相同的未更改代码访问数据库,删除行会/用户。更新公会/用户。所以我不确定为什么会这样。

注意:我在另一台机器上运行相同的确切代码,相同的数据库,完全复制过来,但没有错误。相同的代码,相同版本的猫鼬。它还连接到"mongodb://localhost/ComicallyBOT2",具有相同的模式名称和所有内容。所以我不知道是什么导致了这个问题。

标签: node.jsmongodbmongooseerror-handlingbuffer

解决方案


推荐阅读