DEV Community

Cameron Thompson
Cameron Thompson

Posted on • Edited on

Help With Mongoose

Hello All,

I am running into this warning that is driving me crazy.
Here is the warning:

(node:38419) DeprecationWarning: current Server Discovery and Monitoring engine is deprecated, and will be removed in a future version. To use the new Server Discover and Monitoring engine, pass option { useUnifiedTopology: true } to the MongoClient constructor. (Use `node --trace-deprecation ...` to show where the warning was created) MongoDB Connect: *************.zzkco.mongodb.net 
Enter fullscreen mode Exit fullscreen mode

and here is my code:

const mongoose = require('mongoose'); const connectDB = async () => { try { mongoose.set('useUnifiedTopology', true); mongoose.set('useNewUrlParser', true); const conn = await mongoose.connect(process.env.MONGO_URI) console.log(`MongoDB Connect: ${conn.connection.host}`) } catch (err) { console.error(`Error: ${err.message}`); process.exit(1); } } module.exports = connectDB 
Enter fullscreen mode Exit fullscreen mode

Any help that you can offer is appreciated!

Top comments (10)

Collapse
 
buttercubz profile image
Erick Sosa Garcia

try with this:

const mongoose = require('mongoose'); const connectDB = async () => { try { const conn = await mongoose.connect(process.env.MONGO_URI, { useNewUrlParser: true, useUnifiedTopology: true, }); console.log(`MongoDB Connect: ${conn.connection.host}`) } catch (err) { console.error(`Error: ${err.message}`); process.exit(1); } } module.exports = connectDB 
Enter fullscreen mode Exit fullscreen mode
Collapse
 
cdthomp1 profile image
Cameron Thompson

I get this warning

(node:781) DeprecationWarning: current URL string parser is deprecated, and will be removed in a future version. To use the new parser, pass option { useNewUrlParser: true } to MongoClient.connect. (Use `node --trace-deprecation ...` to show where the warning was created) (node:781) DeprecationWarning: current Server Discovery and Monitoring engine is deprecated, and will be removed in a future version. To use the new Server Discover and Monitoring engine, pass option { useUnifiedTopology: true } to the MongoClient constructor. MongoDB Connect: spydrwebdev-shard-00-00.zzkco.mongodb.net 
Enter fullscreen mode Exit fullscreen mode
Collapse
 
buttercubz profile image
Erick Sosa Garcia

what version of mongoose are you using?

Thread Thread
 
cdthomp1 profile image
Cameron Thompson

I am using version 5.11.9

Thread Thread
 
buttercubz profile image
Erick Sosa Garcia

it's weird, I just installed mongoose and executed the same example and I don't get the warning
i'm using node 15.0.1

Thread Thread
 
cdthomp1 profile image
Cameron Thompson

I have node 14.15.1. I will restart my machine and see if that fixes it.

Thread Thread
 
cdthomp1 profile image
Cameron Thompson • Edited

I reset my machine and installed the latest version of Node. Still receiving the warning.

Thread Thread
 
esix34238932 profile image
Esix

const mongoose = require('mongoose');

const connectDB = async () => {
try {
const conn = await mongoose.connect(process.env.MONGO_URI,
{
useNewUrlParser: true,
useUnifiedTopology: true,
useCreateIndex: true,
});
console.log(MongoDB Connect: ${conn.connection.host})

} catch (err) { console.error(`Error: ${err.message}`); process.exit(1); } 
Enter fullscreen mode Exit fullscreen mode

}

module.exports = connectDB

Collapse
 
hellnar profile image
Stas Klymenko

Here is a page from Mongoose about this kind of errors:
mongoosejs.com/docs/deprecations.html

I've used all these 4 settings and the problem was solved:

mongoose.set('useNewUrlParser', true);
mongoose.set('useFindAndModify', false);
mongoose.set('useCreateIndex', true);
mongoose.set('useUnifiedTopology', true);

Collapse
 
cdthomp1 profile image
Cameron Thompson

I have also tried this and still get the warning.