Изглежда, че трябва да използвате формата GeoJSON, ако вашите данни също са във формат GeoJSON, какъвто е вашият. Ако използвате:
db.collectionname.find({
"location": {
$near: {
$geometry:
{ type: "Point", coordinates: [50.0, -0.1330] }, $maxDistance: 500
}
}
})
трябва да работи. Бих могъл да копирам грешката ви, като използвам формата за съхранение на GeoJSON за полето, но това, което документите наричат наследени точки в израза на заявката. Мисля, че документите са малко неясни, тъй като предполагат, че можете да използвате както GeoJSON, така и наследени координати с 2dsphere индекс 2dsphere
Използвам 2.4.10, доколкото си заслужава, тъй като имаше някои големи промени в пространството във версия 2.4.