[remote] Plugin-Verwendung beendet VDR

  • Der Fehler scheint von Start des SQL-Service ausgelöst zu werden.

    C++: epg2vdr.c
    bool cPluginEPG2VDR::Start()
    {
       Mysql_Init_Exit_v1_0 req;
    
       req.action = mieaInit;
       Service(MYSQL_INIT_EXIT, &req);


    Der EPG-Handler ist damit wohl endgültig raus.

    Ich hatte den auch schon deaktiviert und es kam trotzdem zu dem Fehler.


    Es wäre jetzt schön, wenn mal jemand mit an sich funktionierendem Setup libefence mal probieren könnte.

    Ich würde ungern einen "Geisterfehler" jagen, der nur durch die fehlende Datenbank existiert,

    Gruss
    SHF


  • Also, der SQL-Service ist es wohl auch nicht.

    Wenn man den deaktiviert, deaktiviert man wohl hält man wohl das Plugin, wenn nicht den ganzen VDR an.


    Den Absturz im Menü kann ich übrigens inzwischen auch bestätigen.

    Ziemlich sicher reproduzierbar, sobald man ein Menü vom Plugin öffnet.


    Im menu.c gib viele Funktionen, die cMenuEpgScheduleItem verwenden. Das beinhaltet wohl die Kopie von einem Pointer auf ein Event vom Typ cEvent.

    Meine Vermutung ist, dass irgendwas mit dem Pointer nicht stimmt, bzw. irgendwo der Readlock fehlt.

    Die Sache wird da aber recht unübersichtlich und ich hatte bislang keine Zeit da weiter zu suchen. Und da das Wetter besser wird, wird die Zeit für sowas eher knapper.

    Gruss
    SHF


  • Trotzdem schon mal danke fürs Reinschauen!

  • Den Fehler mit dem Menü habe ich beseitigen können.

    Das lag in der Tat daran, dass die Datenbank nicht initialisiert war.

    Der Patch hilft also nur, wenn im Log vorher diese Meldung aufgetaucht war:

    epg2vdr: Initialization failed, start of plugin aborted!

    In dem Fall wird jetzt das Menü blockiert.

    Dateien

    Gruss
    SHF


  • Dank den "tollen" Osterwetters, habe ich es doch noch mal mit valgrind und address sanitizer versucht.


    Den Fehler, den libefence zeigt (s.o.) zeigen beide nicht. Mit den Änderungen aus den vorherigen Beitrag bekommen keine Abstürze mehr.

    Ich vermute daher mal, das bei libefence ist ein false positive.


    Dafür finden sowohl valgrind als auch address sanitizer memory leaks im VDR (auch ohne jegliche Plugins.

    Immer im Zusammenhang mit libfontconfig.so.1. Ich vermute den Fehler momentan also eher da und werde erstmal das System updaten und hoffe das erledigt sich von selbst.


    Für die, die weiter basteln wollen:

    Für Valgrind vdr starten mit: (eher langsam!)

    valgrind --leak-check=yes vdr ....


    Der address sanitizer wird einkompiliert, dann ganz normal starten.

    Ich hatte das mit der folgenden Änderung an der Make.config vom VDR gemacht.

    Code: Make.config
     ### The C compiler and options:
     
     CC       = gcc
    -CFLAGS   = -g -O3 -Walls
    +CFLAGS   = -g -O3 -Wall -fsanitize=address
     
     CXX      = g++
    -CXXFLAGS = -g -O3 -Wall -Werror=overloaded-virtual -Wno-parentheses
    +CXXFLAGS = -g -O3 -Wall -Werror=overloaded-virtual -Wno-parentheses -fsanitize=address


    Ich denke, ohne laufenden SQL-Server kommt man nicht mehr weiter, da muss also jetzt jemand anderes ran.

    Gruss
    SHF


  • Ich hab jetzt mal epg2vdr und alle Verwendungen von irgendwas, was mysql verwendet, entfernt.

    Trotzdem crasht der VDR immer noch, auch u.a. in der Fernbedienung von live.


    Da das ein headless Server ist, wird das langsam lästig, weil man nix mehr konfigurieren kann - außer manuell in den Confs rum zu pfuschen.


    Was kann ich denn noch an Infos liefern, damit das ggf. gedebugged werden kann?

  • Hi,

    das Plugin live hat mit diesem Beitrag nichts zu tun, hier ging es eher um das remote Plugin.


    -> "[remote] Plugin-Verwendung beendet VDR"

  • Hi,

    das Plugin live hat mit diesem Beitrag nichts zu tun, hier ging es eher um das remote Plugin.


    -> "[remote] Plugin-Verwendung beendet VDR"

    Äh, es geht ja auch um remote - ich schrieb ja "auch u.a. in der Fernbedienung von live".

    Genau genommen crasht der VDR halt immer, wenn man ein Menü verwendet - zumindest von Remote. Da er headless ist, kann ich ein lokales Menü nicht testen.

    Ich kann das auch gerne noch als neuen Thread aufmachen.

  • Was kann ich denn noch an Infos liefern, damit das ggf. gedebugged werden kann?

    Geh doch mal auf VDR 2.6.7, und teste mit genau einem Plugin. Z.b. nur mit live. Und prüfe, ob der Fehler dann noch auftritt.

    Danach mit dem nächsten Plugin ...


    Danach wissen wir dann wenigstens, an welchem Plugin es hängt.

    Client1: ASUS P5QC, Dual Core 3G, Cine S2, Ext. Board von TBE, Xubuntu 20.04, VDR 2.6x

    Client2: RPI3

    Server: RPI4, Sundtek SkyTV Dual 2x

  • VDR 2.6.7 nutze ich schon, ansonsten ist das nicht ganz so einfach mit den Plugins.

    Ich hatte das schon mal in die andere Richtung getestet - also immer eins nach dem anderen wegnehmen.

    Und das Verhalten war ziemlich random - mal crashte der VDR, mal nicht.

    Aktuell hab ich noch den hier gefunden, allerdings crasht der VDR im Menü auch ohne epg2vdr und scraper2vdr:



    Könnte das an dem menuselection Patch liegen?

    Einmal editiert, zuletzt von nobanzai ()

  • Ich hab den vdr jetzt mal ohne den menuselection Patch gebaut. Bisher trat der Fehler nicht mehr auf.

    Was könnte an dem Patch denn faul sein? Der war für 2.6.3, passt der ggf. nicht mehr zu 2.6.7?

    Dateien

  • Was könnte an dem Patch denn faul sein? Der war für 2.6.3, passt der ggf. nicht mehr zu 2.6.7?

    In VDR*ELEC habe ich einen menuselection Patch schon lange drin. Und bisher ist mir noch nicht zu Ohren gekommen, daß es Abstürze oder Probleme gibt. Die Patches unterscheiden sich minimal und woher ich den habe, weiß ich gar nicht mehr. Aber vielleicht wäre der Patch einen Versuch wert.


    menuselection.patch

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!