La limite que vous rencontrez est la taille maximale du tampon de ligne dans le mongo
shell, qui est 4096 octets comme à MongoDB 2.2.1. Si vous essayez de coller votre exemple dans le mongo
shell, vous devriez remarquer que vous ne pouvez pas ajouter de caractères au-delà de la limite de ligne.
Si vous exécutez cette requête à partir d'un pilote de langage vous n'aurez pas ce problème.
Vous pouvez également contourner ce problème dans le mongo
shell en chargeant la requête depuis un fichier JavaScript spécifié sur la ligne de commande :
mongo longname.js
Soit en créant une longue chaîne dans le mongo
shell par programmation :
// Longname will be 5000 characters
var longname = '';
for (i = 0; i < 200; i++) {
longname += 'Abcdefghijklmnopqrstuvwx ';
}
db.foo.insert({
_id: ObjectId("508836afea5cea2ccec11a0d"),
created_at: 1348657869.204,
name: longname
});
printjson(db.foo.findOne({name: longname}))