Ciao ragazzi: ho un po 'di codice che esegue diverse interrogazioni su una connessione che viene inoltrata a una macchina AWS (fyi: queste query stanno colpendo un server Solr in esecuzione su questo macchina) e le query vengono eseguite contro il mio localhost (che viene inoltrato all'istanza AWS).Os x terminal, ssh e troppi file aperti
Il codice inizialmente funziona alla grande ottenendo i dati necessari, ma dopo aver eseguito per un po ', il codice si blocca (in eclissi).
In questo momento esatto, il terminale (cioè dove ho iniziato il mio tunnel ssh) va completamente congelato, riempiendo con la stringa:
"accettare: troppi file aperti"
Perché questa stampa infinita non è associata ad un terminale bash (cioè non posso dire se la connessione ssh è ancora viva o no, e non c'è un testo che indichi quale im in di shell ... solo dichiarazioni di stampa spregiudicate, inesorabili) Non posso dire sia che provenga da Amazon, o dal mio terminale client.
voglio trovare la causa di questo comportamento e individuare la macchina che sta causando mio terminale ad esplodere
Per testare quale delle due macchine stava causando le stampe infinite dell'errore, ho eseguito il comando ulimit sul server ... e trovato che il numero massimo di file aperti consentiti (sul server aws) era ben al di sopra della quantità di file aperti (determinata anche usando ulimit) in qualsiasi momento mentre il programma client (in esecuzione da il mio ide) è in esecuzione.
Ho eseguito lo stesso test sul mio client e non ho riscontrato alcun aumento significativo del numero di file aperti.
Alcuni dettagli laterali: eseguo diverse centinaia di query in un server SOLR con oltre 100 GB di dati in un breve periodo di tempo.
Qualsiasi suggerimento su come determinare perché il mio terminale sshd mac os x sta morendo e la stampa infinita di questo messaggio potrebbe essere potenzialmente molto utile per me. Ovviamente, se fossero o meno specifici per SOLR. Detto questo, eventuali approfondimenti sul perché ciò accadrebbe quando si utilizza un servizio solr può anche aiutare per risolvere questo problema.
Potrebbe essere necessario farlo per l'utente su cui è in esecuzione SOLR, ad es. come tomcat. – nickdos
Questo non ha funzionato per me. – ethicalhack3r
Ho dovuto fare questo per ogni istanza di bash che eseguiva programmi che richiedevano più file. – Chris