You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

29 lines
742 B
JavaScript

/**
* Created by Syed Afzal
*/
const mongoose = require("mongoose");
exports.connect = (app) => {
const options = {
useNewUrlParser: true,
autoIndex: false, // Don't build indexes
maxPoolSize: 10, // Maintain up to 10 socket connections
};
const connectWithRetry = () => {
mongoose.Promise = global.Promise;
console.log("MongoDB connection with retry");
mongoose
.connect(process.env.MONGODB_URI, options)
.then(() => {
console.log("MongoDB is connected");
app.emit("ready");
})
.catch((err) => {
console.log("MongoDB connection unsuccessful, retry after 2 seconds.", err);
setTimeout(connectWithRetry, 2000);
});
};
connectWithRetry();
};