sql >> Base de Datos >  >> NoSQL >> MongoDB

El motor de detección y supervisión del servidor está en desuso

Actualizar

Mongoose 5.7.1 se lanzó y parece solucionar el problema, por lo que configurar useUnifiedTopology opción de trabajo como se esperaba.

mongoose.connect(mongoConnectionString, {useNewUrlParser: true, useUnifiedTopology: true});

Respuesta original

Me enfrentaba al mismo problema y decidí profundizar en el código Mongoose:https://github.com/Automattic/mongoose/search?q=useUnifiedTopology&unscoped_q=useUnifiedTopology

Parece ser una opción agregada en la versión 5.7 de Mongoose y aún no bien documentada. Ni siquiera pude encontrarlo mencionado en el historial de la biblioteca https://github.com/Automattic/mongoose/blob/master/History.md

Según un comentario en el código:

  • @param {Boolean} [options.useUnifiedTopology=false] Falso de forma predeterminada. Establecido en true para optar por el conjunto de réplicas del controlador MongoDB y el motor de monitoreo de clúster fragmentado.

También hay un problema en el proyecto GitHub sobre este error:https://github.com/Automattic/mongoose/issues/8156

En mi caso, no uso Mongoose en un conjunto de réplicas o un clúster fragmentado y, aunque la opción debería ser falsa. Pero si es falso, la configuración debería ser verdadera. Una vez que es cierto, todavía no funciona, probablemente porque mi base de datos no se ejecuta en un conjunto de réplicas o en un clúster fragmentado.

Bajé a 5.6.13 y mi proyecto volvió a funcionar bien. Entonces, la única opción que veo por ahora es degradarlo y esperar a que la corrección se actualice para una versión más nueva.