Nota: Esta solución funciona o no funciona con los sistemas operativos Mac recientes (los comentarios indican> 10.13?). Aparentemente, se han realizado cambios por motivos de seguridad.
Conceptualmente, se aplica la solución; a continuación se presentan algunas fuentes de discusión:
- https://wilsonmar.github.io/límites-máximos/
- https://gist.github.com/tombigel/d503800a282fcadbee14b537735d202c
- https://superuser.com/questions/433746/existe-una-solución-para-los-demasiados-archivos-abiertos-en-el-error-del-sistema-en-os-x-10-7 -1
--
He tenido el mismo problema (ejecutando una operación diferente, pero aun así, aparece el error "Demasiados archivos abiertos") y, como dice Lese, parece estar en el límite de "archivos máximos" en la máquina que ejecuta mongod.
En una Mac, es mejor verificar los límites con:
sudo launchctl limit
Esto te da:
<limit name> <soft limit> <hard limit>
cpu unlimited unlimited
filesize unlimited unlimited
data unlimited unlimited
stack 8388608 67104768
core 0 unlimited
rss unlimited unlimited
memlock unlimited unlimited
maxproc 709 1064
maxfiles 1024 2048
Lo que hice para solucionar el problema fue establecer temporalmente un límite más alto (el mío originalmente era algo así como suave:256, duro:1000 o algo raro como eso):
sudo launchctl limit maxfiles 1024 2048
Luego vuelva a ejecutar la operación de consulta/indexación y vea si se rompe. De lo contrario, y para mantener los límites más altos (se restablecerán cuando cierre la sesión de shell en la que los configuró), cree un archivo '/etc/launchd.conf' con la siguiente línea:
limit maxfiles 1024 2048
(o agregue esa línea a su archivo launchd.conf existente, si ya tiene uno).
Esto configurará el maxfile a través de launchctl en cada shell al iniciar sesión.