Java error - minecraft

Pytania i problemy
Lempik
Lempik

Od kilku tygodni się zdarza, że serwer MC pada, mam zawsze aktualny spigot (wcześniej 1.14.4, teraz 1.15.1). A tak naprawdę błąd wskazuje na javę, a nie na silnik MC czy jakiś plugin. Nie wiem, o co chodzi i jak to naprawić. Googlowałem, ale znalazłem tylko to, że innym też się zdarza, ale rozwiązania nie znalazłem.

# A fatal error has been detected by the Java Runtime Environment:
#
#  SIGSEGV (0xb) at pc=0x00007fa8c61c6121, pid=6595, tid=0x00007fa8c4415700
#
# JRE version: Java(TM) SE Runtime Environment (8.0_191-b12) (build 1.8.0_191-b12)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (25.191-b12 mixed mode linux-amd64 compressed oops)
# Problematic frame:
# V  [libjvm.so+0x645121]  oopDesc::size_given_klass(Klass*)+0x1
#
Timo
Timo Moderator forum.lvlup.pro

Próbowałeś z inną wersją Javy? Też miałem kiedyś problem z crashami javy, rozwiązało go użycie innej i nowszej.

Lempik
Lempik

Nic nie próbowałem. Nawet nie wiem, co konkretnie miałbym zrobić.

Timo
Timo Moderator forum.lvlup.pro

Zainstaluj inną wersję Javy i na niej uruchamiaj serwer. Obserwuj.

Nieznajomy11
Nieznajomy11 Moderator forum.lvlup.pro

Lempik:

A tak naprawdę błąd wskazuje na javę, a nie na silnik MC czy jakiś plugin.

A twój silnik i wtyczki są napisane w czym? 😂

Błąd wydaje się mieć związek z gc. Minecraft, szczególnie w wersjach 1.15.1 ma teraz jeszcze bardziej przerażający śmietnik na heapie, zalecana wersja to java 11 lub nowsza. Zdecydowanie nie polecałbym siedzieć na 1.8. Od 11 G1GC zostało znacznie usprawnione.

Lempik
Lempik

Instalowałem w październiku/listopadzie 2018 r. wszystko zgodnie z poradnikami, które mi wtedy polecaliście. Więc javę instalowałem według tego poradnika: https://lvlup.rok.ovh/t/instalacja-serwera-minecraft-na-vps-dedyku/248 Jak ktoś napisze poradnik, jak zmienić javę 8 na javę wyższą, żeby działał serwer MC, to się zastosuję.

DBanaszewski
DBanaszewski α-tester v3

Lempik:

jak zmienić javę 8 na javę wyższą

sudo apt purge oracle-java* openjdk*
sudo apt install openjdk-jre-11-headless

I gotowe 😛

Lempik
Lempik

Dziękuję. Ja jednak znalazłem 9 miesięcy stary wpis, że jednak ponad 97% serwerów korzysta z wersji 8 i że programiści pluginów piszą ciągle dla wersji 8, więc się boję, czy wersja wyższa nie będzie w niektórych sytuacjach niezgodna. https://www.spigotmc.org/threads/what-java-version-u-use.367538/#post-3363140

Niemniej nawet jak zainstaluję inną wersję javy, to ciągle nie wiadomo, czy nastąpi poprawa. Co w ogóle mówi ten komunikat, który przytoczyłem w pierwszym wpisie? Co może być przyczyną? Może za mało RAM? Może powinienem poprawić parametry uruchamiania serwera MC?

DBanaszewski
DBanaszewski α-tester v3

Lempik:

Może za mało RAM?

Java jest wszystkożerna, dawaj wincej ramu!!1, ale przy problemie Out of memory, miałbyś dłuższy crash-log + właśnie te Out of memory w crash-logu.

Lempik:

Ja jednak znalazłem 9 miesięcy stary wpis, że jednak ponad 97% serwerów korzysta z wersji 8

Może prawda, ale czas idzie do przodu. Starajmy się przechodzić na nowsze oprogramowanie, jeżeli jest, a wiemy, że jest - Java 11 zachowuje kompatybilność z Java 8. Java 11 uruchomi pluginy/aplikacje z Java 8, ale Java 8 nie uruchomi pluginów/aplikacji napisanych na Java 11.

Lempik:

V [libjvm.so+0x645121] oopDesc::size_given_klass(Klass*)+0x1

Z tego co można wyczytać na bugtrackerze OpenJDK, jest to prawdopodobnie bug GC na tych wersjach Java.

Zaktualizuj Java do 11 bez obaw - można to cofnąć kilkoma komendami ;)

Lempik
Lempik

Dziękuję. Ciągle jednak się boję, bo się na tym nie znam. Bo ja mam serwer MC uruchomiony pod PufferPanelem, nie wiem, czy aktualizacja javy do 11 nie zrobi jakiegoś bałaganu. No i nie wiem, jakie są te komendy (kilka komend), którymi można ew. cofnąć javę 11 do wersji 8.

system
system

Ten temat został automatycznie zamknięty 32 dni po ostatnim wpisie. Tworzenie nowych odpowiedzi nie jest już możliwe.