Mongoose delete multiple data at once

mongodb, mongoose, node.js

Solution

I think that you could use $in operator of mongodb.

http://docs.mongodb.org/manual/reference/operator/query/in/

Something like:

UTUSTP.remove({_id: {$in: wronglist}}, function(){...}); // and so on

Problem

I have a big list of ids that I want to delete from mongodb from multiple models, the main idea is that I have the same id for a document in multiple schemas and I would like to delete a document from each model. I am doing it like this: ``` _.each(wrongList, function(item) { UPUSTP.find({id: item.id}).remove(function(err) { if (err) console.log("Error while deleting " + err.message); }) UPUANAM.find({id: item.id}).remove(function(err) { if (err) console.log("Error while deleting " + err.message); }) UPUEXE.find({id: item.id}).remove(function(err) { if (err) console.log("Error while deleting " + err.message); }) UPUEXO.find({id: item.id}).remove(function(err) { if (err) console.log("Error while deleting " + err.message); }) UPUPROC.find({id: item.id}).remove(function(err) { if (err) console.log("Error while deleting " + err.message); }) }) ``` The problem is that I have 14000+ ids in the `wrongList` and the query works but it takes a lot of time to finish... how can I increase the time of the remove? Can I remove in batch or something like that?

Original source