title: MongoDB find $near and aggregate $geoNear return different results
body: <p>Why does find and aggregate return a different amount of documents here?
  I have no glue why. Is this a bug or what do i wrong here?
  I have this small peace of code for mongo db shell. I look only for documents which within a certain radius from a given location.
  <strong>geojson_loc</strong> is a 2dsphere index and the <strong>only</strong> index on this collection. Thx for any explanation which might explain what i am doing wrong here.</p>
  
  <p>Code:</p>
  
  <pre><code>db = new Mongo("localhost").getDB("dbname");
  print("All docs:"+db.coll.find().count())
  
  docs = db.coll.find({"geojson_loc":{"$near" :{"$geometry":{"type":"Point", 
      "coordinates": [11.575433, 48.137289]}, "$maxDistance" : 20000.0 }}}).count()
  print("with find:"+docs)
  
  cc = db.coll.aggregate({'$geoNear': {'spherical': true, 'limit': 1500000, 
  'near': {'type': 'Point', 'coordinates': [11.575433, 48.137289]}, 'maxDistance': 20000.0, 'distanceField':
  'temp.distance'}})
  count = 0;
  
  cc.forEach(function(doc){
  count++;});
  
  print("with aggregate:"+ count);
  </code></pre>
  
  <p>The result is:
  All docs: 25000
  with find: 13000
  with aggregate: 4000</p>
  
  <p>And i would expect:
  All docs: 25000
  with find: 13000
  with aggregate: 13000
  or:
  All docs: 25000
  with find: 4000
  with aggregate: 4000</p>
  
  <p><strong>EDIT:</strong>
  If I run $geoNear without aggregation it returns the same amount of documents as within aggregation. The size of the returned document is 88MB which probably exceeds the 16MB limit of maximum BSON document size which can be returned. Is there are way to use $geoNear within aggregation without this restriction in size or $near which is not possible at all as far I know? </p>