2016-07-14 16 views
1

Wir haben ein Nexus-Repository mit einigen tausend Artefakten - Gläser, Krieg und Ohren. Ich habe versucht, dieses Repository mit jQAssistant zu scannen (mit scan -u maven:repository:...), aber selbst 4 GB Heap-Speicher für Java 1.7 waren nicht genug, ein Speichermangel-Fehler trat nach einigen Stunden auf.jQAssistant - reduzieren Sie den Speicherverbrauch

Gibt es eine Möglichkeit, den Speicherverbrauch zu reduzieren, z. Das Repository in Teilen scannen? Oder kann ich jQAssistant so konfigurieren, dass weniger Speicher benötigt wird?

Antwort

1

Der Repository-Scanner wurde mit einer großen Anzahl von Artefakten getestet, die stundenlang laufen. Das ist eine schlechte Überraschung.

Es wäre hilfreich, die Ursache des Problems zu sehen. Können Sie den gleichen Lauf tun mit

JQASSISTANT_OPTS=-XX:+HeapDumpOnOutOfMemoryError ... 

Last der erzeugte Dump mit Eclipse MAT (http://www.eclipse.org/mat/) und ein Leck vermutet Bericht erstellen (das ist eine der direkt nach dem Dump Laden angeboten Optionen)?

+1

Ich werde es versuchen. Ich hoffe, morgen Ergebnisse zu sehen. –

+0

Um ein Zwischenergebnis zu geben: Wenn ich den Heap-Speicher auf 8 GB eingestellt habe, funktionierte es mit bis zu etwa 7 GB. Unglücklicherweise, Speicher-Profiling mit JVisualVM tötet das Programm (es wäre interessant gewesen). –

+0

Nur eine Frage: Enthält Ihr Repository große Archive mit anderen Archiven (wie z. B. Verteiler-ZIPs mit EAR-Dateien)? –