Trop de fichiers ouverts, tandis que d'assurer l'indice de mongo
Je voudrais créer des index de recherche en texte sur mongo collection. J'écris
db.test1.ensureIndex({'text':'text'})
et puis j'ai vu dans mongod processus
Sun Jan 5 10:08:47.289 [conn1] build index library.test1 { _fts: "text", _ftsx: 1 }
Sun Jan 5 10:09:00.220 [conn1] Index: (1/3) External Sort Progress: 200/980 20%
Sun Jan 5 10:09:13.603 [conn1] Index: (1/3) External Sort Progress: 400/980 40%
Sun Jan 5 10:09:26.745 [conn1] Index: (1/3) External Sort Progress: 600/980 61%
Sun Jan 5 10:09:37.809 [conn1] Index: (1/3) External Sort Progress: 800/980 81%
Sun Jan 5 10:09:49.344 [conn1] external sort used : 5547 files in 62 secs
Sun Jan 5 10:09:49.346 [conn1] Assertion: 16392:FileIterator can't open file: data/_tmp/esort.1388912927.0//file.233errno:24 Too many open files
Je travaille sur MaxOSX 10.9.1.
S'il vous plaît aider.
Vous devez vous connecter pour publier un commentaire.
J'ai eu le même problème (l'exécution d'une autre opération, mais encore, un "Trop de fichiers ouverts" d'erreur), et comme lese dit, il semble être en baisse à la "maxfiles" limite sur la machine qui exécute mongod.
Sur un mac, il est préférable de vérifier les limites avec:
Cela vous donne:
Ce que j'ai fait pour contourner le problème a été de mettre temporairement de la limite supérieure (le mien était à l'origine quelque chose comme soft: 256, dur: 1000 ou quelque chose de bizarre comme ça):
Puis ré-exécuter la requête/opération d'indexation et de voir si elle se casse. Si non, et de garder la plus haute des limites (ils seront réinitialisés lors de la déconnexion de la session de shell que vous avez définies sur), créer un " /etc/launchd.conf' fichier avec la ligne suivante:
(ou ajoutez cette ligne à votre launchd.fichier conf, si vous en avez déjà un).
L'maxfile via launchctl sur chaque coquille lors de la connexion.
elle peut être liée à cette
essayez de vérifier la configuration de votre système exécutant la commande suivante dans le terminal
J'ai ajouté un temporaire
ulimit -n 4096
avant la commande de restauration.vous pouvez également utiliser
mongorestore --numParallelCollections=1 ...
et qui semble aider.Mais toujours le pool de connexion semble s'épuiser.
sudo launchctl limit maxfiles 512 1024
serait la cause de ma panne du système, au moins avec zshupdate_terminalapp_cwd:4: pipe failed: too many open files in system zsh: pipe failed: too many open files in system sudo launchctl limit maxfiles 512 update_terminalapp_cwd:4: pipe failed: too many open files in system zsh: pipe failed: too many open files in system