MongoError: no such cmd: aggregate

Rescato este tema que tenía del año pasado cuando trasteaba con MongoDb. El caso es que estuve intentando hacer agregaciones a través de Mongoose.js en Node y como que no podía.

MongoError: no aggregate

{ [MongoError: no such cmd: aggregate]  
 name: ‘MongoError’,  
 errmsg: ‘no such cmd: aggregate’,  
 ‘bad cmd’: { aggregate: ‘*nombreModelo*‘, pipeline: [ [Object], [Object] ] },  
 ok: 0 }

Ni siquiera me funcionaba las adaptaciones de los sencillos ejemplos de la web oficial de Mongo. Así que hice lo que hacemos todos en estos casos de desesperación: mirar la documentación oficial sobre agregación 😀 Y empecé a ver que la agregación estaba disponible a partir de la 2.1.0 ¿Mongo no permitía agregaciones anteriormente? No me imagino hacerlo con MapReduce()

En mi caso por entonces, tenía una versión anterior de Mongo aunque la instalara -creo recordar- de modo oficial y supuestamente era la última versión. Para salir adelante y poder agregar en Mongo, hay que actualizarlo.

Cómo actualizar MongoDb

Ejecutar en la terminal cada uno de los siguientes pasos:

  • Actualizar la lista del repositorio de MongoDb
echo "deb http://downloads-distro.mongodb.org/repo/ubuntu-upstart dist dist 10gen" | tee -a /etc/apt/sources.list.d/10gen.list
  • Actualizar todos los repositorios
sudo apt-get update
  • Instalar los pendientes si hubiera
sudo apt-get install -f
  • Eliminar lo obsoleto:
sudo apt-get autoremove

¡Funciona!

Upgrade de Mongo vía UbuntuGeek

David Burgos

Read more posts by this author.