MongoDB: пул экземпляров сервера был уничтожен проблема

#node.js #mongodb

Вопрос:

Я никогда не звоню db.close() , почему происходит эта ошибка ?

В моем сервисе NodeJS у меня есть цикл для вставки данных в mongo без асинхронности/ожидания и немедленного ответа при выполнении функции

 async function () {
  const dataA = await A.find();

  dataA.forEach((a) => {
    const b = new B({ name: a.name });
    b.save()
  });

  return 200; // response to client with the 200 code
}

 

Если в то время как B все еще находится в процессе вставки новых данных, функция возвращает, может произойти ошибка ?

Комментарии:

1. Добавьте полный рабочий пример. Все остальное-просто догадки.

2. @Marc это просто, просто вызовите функцию save (), чтобы сохранить запись в цикле без ожидания. Это может вернуть функцию до завершения процесса save ().

3. Очевидно, что проблема не в этом. .save() не закрывает соединение, не прерывает его, не предоставляет минимальный рабочий пример. Если у вас есть эта проблема в вашем минимальном примере, ее гораздо проще отладить. В вашем коде нет абсолютно ничего, что могло бы вызвать эту ошибку.