Statement zum Thema Server-Crashes.

  • Hallo,



    ja - wir ihr mitbekommen habt, haben wir in letzter Zeit vermehrt Crashes. Ich weiß wo diese her kommen, kann es aber so direkt nicht lösen.


    Zum Problem:


    Garry's Mod ist eine 32 Bit Anwendung und kann durch die Begrenzung der Source-Engine nur 4 Gigabyte RAM benutzen.
    Der Server läuft nach maximal 6 Stunden (ohne Mapchange) über diese grenze und stirbt.


    Folgende Meldung erscheint dabei in der Konsole.:


    Code
    1. 19:30:27 L 01/15/2016 - 18:30:30: Engine error: Lua Panic! Something went horribly wrong!
    2. 19:30:27 "not enough memory"

    Üblich ist solch ein verhalten wohl nicht.
    Wir prüfen gerade einige Addons auf Fehlern in den LUA-Files...



    Solltet ihr jedoch vllt Lösungsvorschläge haben - her damit.


    Hier mal eine Prognose von mir:
    > Wiremod
    > Bansystem


    Liebe Grüße
    SeaLife

  • Hallo,


    so - wir haben es nun geschafft das Problem ausfindig zu machen. Das Problem war ein Memory-Leak.


    Zur Erklärung: Der Root Server hat insgesamt 32 Gigabyte RAM. Garry's Mod Server nehmen sich NIEMALS mehr als etwa 4 Gigabyte davon (Das ist die Grenze).


    4 Gigabyte sind etwa 12% der gesamt Leistung.


    Das Problem: Wenn der Garry's Mod Server mehr als 12% RAM benutzt hat - crashte er. Das ist uns erst vor 4-5 Tage aufgefallen. Also habe ich nach möglichen Fehlerquellen gesucht und auch eine gefunden.
    Die Fehlerquelle war das MySQLOO Plugin. Dieses hat für Memory-Leaks gesorgt.


    > "Objects created in mysql::query commands will not be carbage collected" heißt es im Facepunch Forum - was so viel heißt wie: Alle Erzeugten Objekte in einer Query-Funktion (Die Funktion, mit der wir auf der Datenbank irgendwas machen) werden nicht richtig vom "Carbage-Collection" Prozess gelöscht. (https://de.wikipedia.org/wiki/Garbage_Collection)



    Lösung:
    Wir sind mit allen Addons die Resource-lastig waren (Ban-Systen, GLogs, Numplate) auf tmysql4 umgestiegen. (tmysql4 ist ein MySQL Addon welches keine Memory-Leaks verursacht.)



    Btw: Server läuft seit über 10 Stunden (Ja ich weiß, nacht und so :D - das macht für die Auslastung des RAM's keinen unterschied :P) sind wir bei 2.3% der Gesamtleistung (~760MB RAM)




    Gruß
    SeaLife