lashleigh
lashleigh

Reputation: 2565

Using mongomapper to execute server runCommand geoNear

I would very much like to use the mongo geoNear command as discussed here.

Here is the command I entered in my rails console with the accompanying error message.

MongoMapper.database.command({ 'geoNear' => "trips", 'near' => [45,45]})
Mongo::OperationFailure: Database command 'geoNear' failed: 
  (errmsg: 'more than 1 geo indexes :('; ok: '0.0').

I can not make sense of the error message, it is supposedly impossible to have more than 1 geo index and I am certain that I have only created one.

Based on this stackoverflow question I believe I am wording the query correctly. Does anyone understand that error message? How would I go about destroying and recreating my indexes?

I am using rails 3.1 with mongodb v2.0 and the mongo ruby gem v1.5.1.

Upvotes: 2

Views: 728

Answers (1)

lashleigh
lashleigh

Reputation: 2565

I really asked this too soon, maybe I should delete it? Somehow there were in fact too many geo indexes, because deleting the index and recreating it fixed the problem.

MongoMapper.database.collection('trips').drop_indexes
Trip.ensure_index [[:route, '2d']]

Upvotes: 6

Related Questions