Поведение потока изменений Мангуста «hasNext ()» всегда истинно

#javascript #node.js #mongodb #mongoose

#javascript #node.js #mongodb #мангуст

Вопрос:

Моя проблема в том, что цикл никогда не завершается.

Это мой объект changeStream:

 const changeStreamIterator = userModel.User.collection.watch(filter, {
     fullDocument: "default",
     startAtOperationTime: startAtOperationTime,
     readPreference: "primary",
});
 

Прочитайте результаты с помощью этого кода:

    while (await changeStreamIterator.hasNext()) {
               
           let change = await changeStreamIterator.next();

           console.log("change");
   }
.
.
.
 

после приведенного выше кода мой код не возобновился.

Ответ №1:

Поток изменений бесконечно длинный. Если вы создадите цикл, повторяющий его, этот цикл будет бесконечным.

Используйте шаблоны, доступные в узле, для одновременного выполнения другой работы.