Frage

Wir verwenden Hudson als kontinuierliche Integration System auszuführen baut automatisierte (jede Nacht und basiert auf CVS Polling) von viele unserer Projekte.

Einige Projekte Umfrage CVS alle 15 Minuten, einige andere alle 5 Minuten abfragen und eine Umfrage jede Stunde.

Alle paar Wochen werden wir einen Build erhalten, die mit der folgenden Ausgabe fehlschlägt:

FATAL: java.io.IOException: Too many open files
java.io.IOException: java.io.IOException: Too many open files
    at java.lang.UNIXProcess.<init>(UNIXProcess.java:148)

Der nächste Build arbeitete immer (mit 0 Änderungen) so angekreidet es uns immer bis zu 2 Baujobs zur gleichen Zeit laufen wird und geschieht zu viele Dateien während des Prozesses geöffnet zu haben.

Dieses Wochenende haben wir einen Build hatten scheitern Freitag Abend (automatische Nightly Build) mit der Meldung und jedem anderen Nightly Build schlug ebenfalls fehl. Irgendwie löste dies Hudson kontinuierlich jedes Projekt aufzubauen, die gescheitert, bis das Problem behoben wurde. Dies führte zu einem Build alle 30 Minuten oder so von jedem Projekt, bis irgendwann am Samstagabend, wenn das Problem auf magische Weise verschwunden.

War es hilfreich?

Lösung

Dies ist Hudson Ausgabe 715 ( http: //issues.hudson- ci.org/browse/HUDSON-715 ). Die aktuelle Empfehlung ist die ‚maximale Anzahl gleichzeitigen Abrufthreads‘ setzen Sie die Polling-Aktivitäten zu halten.

Andere Tipps

Siehe https: //wiki.jenkins-ci.org/display/JENKINS/I%27m+getting+too+many+open+files+error für das, was wir von Ihnen brauchen diese Art von Problem zu beheben.

Ändern von Systemgrenzen für pro-Prozess maximal geöffneten Dateibeschreibungen? Wie in ulimit -n für den Java-Prozess?

ich dieses Problem mit einer anderen Java-Anwendung erfahren habe, läuft auf Debian, es ging weg, wenn wir auf Java-Version 1.6.0.0 herabgestuft. Java geschlossen nie nicht verwendete Verbindungen, so dass es die Ausnahme werfen.

Eines der häufigsten Probleme verursacht „Zu viele offene Dateien“ ist Active Directory-Plugin aktiviert und in Jenkins konfiguriert haben. Es gibt bekannte Probleme mit diesem Plugin, die enorme Anzahl von Threads führen zu zeigen, und „Zu viele offene Dateien“ Fehler als auch in Protokollen. Nachdem es zu deaktivieren und zu LDAP-Authentifizierung Schalt habe Erfahrung Jenkins ich nicht mehr hängen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top