title: Can't close a MongoDB connection with Node.js?
body: <p>It seems that I can't close a MongoDB connection with Node.js native driver. When I run <code>node replica.js</code> the script never ends, hence the connection can't be closed for some reason.</p>
  
  <p>Here is the code. It's a replica set but I don't think that it's a problem:</p>
  
  <pre><code>var mongodb = require('mongodb')
    , Db      = mongodb.Db
    , Server  = mongodb.Server
    , ReplSet = mongodb.ReplSet;
  
  // Replica set
  var replSet = new ReplSet( [
      new Server('localhost', 27017), // Primary
      new Server('localhost', 27018), // Secondary
      new Server('localhost', 27016), // Secondary
    ],
    { rs_name: 'replica', read_secondary: true }
  );
  
  var db = new Db('test', replSet, { native_parser: true, w: 1 });
  
  // Opening
  db.open(function (err, db) {
      if (err) console.error(err);
  
      db.close();
  });
  </code></pre>
  
  <p>Connecting to a single mongod instance works just fine, connection get closed and the script ends, without the need (suggested by robertklep) of <code>process.exit()</code> call:</p>
  
  <pre><code>var mongodb = require('mongodb')
    , Db      = mongodb.Db
    , Server  = mongodb.Server;
  
  // Single instance
  var server = new Server('localhost', 27017):
  var db = new Db('test', server, { native_parser: true, w: 1 });
  
  // Opening
  db.open(function (err, db) {
      if (err) console.error(err);
  
      db.close();
  });
  </code></pre>