title: mongoose query low performance when using with populate
body: <p>I need help with this query.
  I am querying 8000 documents in AppVisitorwith 4 collections populated.But it is not returning any result. Means it get stuck and after some time nodejs server return 404 error for route in which this query is executed.</p>
  
  <p><div class="snippet" data-lang="js" data-hide="false" data-console="false" data-babel="false">
  <div class="snippet-code">
  <pre class="snippet-code-js lang-js prettyprint-override"><code> let Keys = yield AppVisitor.find(condition).sort({ createdAt: -1 })
                  .populate({ path: 'userDeatils' })
                  .populate({ path: 'details' })
                  .populate({
                      path: 'skills',
                      match: {
                          $and: [{ value: { $ne: '' } }, { value: { $ne: null } }, { value: { $not: /({R[\d]+})/g } }]
                      }
                  })
                  .populate({ path: 'courses' });</code></pre>
  </div>
  </div>
  </p>