mongodb .save() from CSV stream doesn't get called in forEach loop

I'm trying to import a CSV file into mongodb. Before importing some alterations have to be done in JS to the data.

In the following script the save function however doesn't seem to be called.

console.log(newCampaign) shows the correct object.

console.log('saving') is not displayed.

 var input = fs.createReadStream('DATA.csv');

 var csv = "";
 input.on('data', function(chunk) {
   csv += chunk;
 })

 input.on('end', function() {
   csvParse(csv, function(err, output){
     if (err) console.log(err);
       output.forEach(function(csvCampaign){
       // CONVERT csvCampaign TO newCampaign
       console.log(newCampaign)
       var campaignObj = new Campaign(newCampaign);
       campaignObj.save(function(err) {
         console.log('saving');
          if (err) {
            console.log(err);
          }
          console.log('document saved');
        });
      })
    })
  });

So I found the answer. The forEach loop already returns before the callback function can be executed. As a solution I used the async.eachSeries function https://github.com/caolan/async#eachSeries