MediathekView bleibt mit Exception in thread "AWT-EventQueue-1" java.lang.OutOfMemoryError: GC overhead limit exceeded hängen
-
Nach meinem Lubuntu-Upgrade (Linux) von 16.04 auf 18.04 hängt das Programm in einer ewigen Schleife:
Exception in thread “AWT-EventQueue-1” java.lang.OutOfMemoryError: GC overhead limit exceeded
Das ist meine Konfiguration:
free -m
total used free shared buff/cache available
Mem: 1984 774 112 16 1097 1022
Swap: 2574 0 257dpkg -l|grep openjfx
ii libopenjfx-java 8u161-b12-1ubuntu2 all JavaFX/OpenJFX 8 - Rich client application platform for Java (Java libraries)
ii libopenjfx-jni 8u161-b12-1ubuntu2 amd64 JavaFX/OpenJFX 8 - Rich client application platform for Java (native libraries)
ii openjfxupdate-alternatives --config java
There are 2 choices for the alternative java (providing /usr/bin/java).Selection Path Priority Status
0 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1101 auto mode
1 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1101 manual mode- 2 /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java 1081 manual mode
Wenn diese Exception eintritt, ist mein Hauptspeicher noch zu 50% frei, sie kommt daher nicht von zu kleinem Speicher, sondern von einem Problem, dass MediathekView mit dem Java hat.
Mittlerweile ergab ein Test auf 16.04, dass dort MediathekView mittlerweile mit demselben Fehler aussteigt. Die Filmliste scheint zum Laden zu groß?
Hinweis:
“The java.lang.OutOfMemoryError: GC overhead limit exceeded error is the JVM’s way of signalling that your application spends too much time doing garbage collection with too little result. By default the JVM is configured to throw this error if it spends more than 98% of the total time doing GC and when after the GC only less than 2% of the heap is recovered.”Gibt es eine Zwischenlösung, bis die Garbage Collection repariert ist?
Vielen Dank!
-
@hotmifi aber unter ubuntu 16.04 hast du Java 8 oder? Ich weiß dass 18.04 mit Java 11(in wirklichkeit Java 10) daher kommt. MV ist zumindest aktuell noch nicht gegen 9 und 10 getestet. Ich meine man konnte auch Java 8 für 18.04 installieren.
So richtig das Problem erklären tut es das Problem nicht, aber es setzt zumindest schonmal Rahmenbedingungen. Habe seit heute auch ubuntu 18.04 und gucke mir das gleich auch nochmal am laptop an.
-
@alex Klar. Ich habe Java 8u161 eingestellt. Aber mittlerweile geht es auch auf 16.04 nicht mehr, wenn die CPU-Speed langsamer als 2GHz ist. Der “Garbage” ist bei der momentanen Filmliste zu groß und der Java-Timer schlägt deshalb zu.
-
wie startest du MV?
Und hast du mal den kompletten Log?Probiere eventuell mal:
java -Xmx1g -XX:+UseConcMarkSweepGC -jar MediathekView.jar
-
@alex sagte in MediathekView bleibt mit Exception in thread "AWT-EventQueue-1" java.lang.OutOfMemoryError: GC overhead limit exceeded hängen:
java -Xmx1g -XX:+UseConcMarkSweepGC -jar MediathekView.jar
mit:
java -Xmx1g -XX:+UseConcMarkSweepGC -jar MediathekView.jar
funktioniert es!
Ich habe MediathekView.sh entsprechend angepasst.