Контекст:Mongoose запрос бесконечна повесить
- Mongoose v4.7.6
- MongoDB v3.2.11
Я пытаюсь обрабатывать ошибки, связанные с моей базы данных в моем программном обеспечении ,
Я застрял в следующей проблеме: когда база данных отключена, запрос мангуста зависает, пока он не будет повторно подключен.
Вот что случилось:
- я запускаю мое программное обеспечение
- Это подключение к базе данных, хотя мангустов
- I Ctrl + Cmongod процесс
- я получаю "Disconnect" и "Закрыть" событие из мангуста
- я запускаю находку (...) запрос
- запрос Поиск повесьте
Что я пробовал:
Я попытался использовать в своей схеме опцию bufferCommands, который, согласно предположению documentation, должен был вернуть mongoose, если нет доступного соединения, но результат тот же.
Что такое мой код?
mongoose.createConnection(..., {
server: {
// We disable reconnect from mongoose
auto_reconnect: false,
socketOptions: {
// For long running applictions it is often prudent to enable keepAlive.
// Without it, after some period of time you may start to
// see "connection closed" errors for what seems like no reason.
// From mongoose documentation
keepAlive: 1,
},
},
})
Thx для ответа на мой вопрос. Я не совсем понимаю ваш ответ. Поэтому мой запрос на поиск использует схему, а затем основной объект подключения. Что я могу сделать, чтобы отменить запрос? Thx –
@ GrégoryNEUT тайм-аут для функции поиска - вот что я написал в ответ. Если вы не получите ответ на этот конкретный запрос некоторое время, отмените запрос. –
Вы знаете, как отменить запрос, отправленный в мангуст? –