0 votes
1 view
in SQL by (31.3k points)

I have a REST service built in node.js with Restify and Mongoose and a mongoDB with a collection with about 30.000 regular sized documents. I have my node service running through pmx and pm2.

Yesterday, suddenly, node started crapping out errors with the message "MongoError: Topology was destroyed", nothing more. I have no idea what is meant by this and what could have possibly triggered this. there is also not much to be found when google-searching this. So I thought I'd ask here.

After restarting the node service today, the errors stopped coming in. I also have one of these runnings in production and it scares me that this could happen at any given time to a pretty crucial part of the setup running there...

I'm using the following versions of the mentioned packages:

  • mongoose: 4.0.3

  • rectify: 3.0.3

  • node: 0.10.25

1 Answer

0 votes
by (73.5k points)

In order to keep Mongodb's connection alive in production you can use the following way:

var options = { 

server: { socketOptions: { keepAlive: 1, connectTimeoutMS: 30000 } }, 

replset: { socketOptions: { keepAlive: 1, connectTimeoutMS: 30000 } } 


mongoose.connect(secrets.db, options);