title: Uncaught, unspecified "error" event
body: <p>I'm encountering this error "Uncaught, unspecified "error" event. (Incorrect arguments)" when trying to login using postman. Please help me figure out the incorrect arguments.</p>
  
  <p>Here is my code:</p>
  
  <pre><code>router.post('/login', function(req, res) {
    User.findOne({
      username: req.body.username
    })
    .select('password')
    .exec(function(err, user) {
  
      console.log('err', err); // err is null
  
      if (err) throw err;
  
      if (!user) {
        res.status(404).send({message: 'User does not exist!'})
      }
      else if (user) {
        var validPassword = user.comparePassword(req.body.password);
  
        if (!validPassword) {
          res.status(401).send({message: 'Invalid Password'});
        }
        else {
          var token = createToken(user);
          res.json({
            success: true,
            message: 'Successfully login!',
            token: token
          })
        }
      }
    })
  </code></pre>
  
  <p>})</p>
  
  <p>the exact error:
  <code>
  events.js:165
        throw err;
        ^
  Error: Uncaught, unspecified "error" event. (Incorrect arguments)
      at Function.emit (events.js:163:17)
      at Immediate.&lt;anonymous&gt; (..../node_modules/mongoose/lib/query.js:2322:23)
      at runCallback (timers.js:574:20)
      at tryOnImmediate (timers.js:554:5)
      at processImmediate [as _immediateCallback] (timers.js:533:5)
  </code></p>
  
  <p>I'm using:</p>
  
  <ul>
  <li>Node 6.6.0 </li>
  <li>Mongoose 4.7.5</li>
  <li>MongoDB 2.4.9</li>
  </ul>