Beiträge von kfb77

    Ich zitiere mal aus der Dokumentation:

    Zitat

    Um in group_vars/all definierte Variablen anzupassen, sollte man eine Datei host_vars/localhost anlegen und darin die gewünschten Anpassungen vornehmen. Die in dieser Datei definierten Variablen übersteuern die Vorgabewerte aus dem Playbook und der group_vars/all.

    Live wird nicht per Default installiert, du musst das in deiner individuellen host_vars/localhost bei "vdr_plugins" angeben.

    Nein, das reicht nicht.

    kls

    Vielen Dank für die neue Version.

    Ich bekomme damit eine Compiler warning:


    gcc --version

    gcc (Ubuntu 11.3.0-1ubuntu1~22.04) 11.3.0

    Copyright (C) 2021 Free Software Foundation, Inc.

    This is free software; see the source for copying conditions. There is NO

    warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.


    Sieht so aus, als ob mein Compiler auf den Format String besteht.

    Dies beseitigt die Warning:


    MarkusE

    Machst du bitte mal bei Gelegenheit ein unnötiges blank am Zeilenende raus, mein Compiler gefällt das nicht.

    Code
    multischedule.ecpp:521: warning: trailing white space after closing tag

    Nachdem ich wegen dem Timeout Thema oft den VDR kompiliert hatte, ist mir eine warning bei yavdr aufgefallen.

    Der o.g. Patch erzeugt folgende Compiler Warnung:

    Hier ein Fix dazu:

    Hier nochmals die wesentlichen Einträge, eigentlich sieht das für mich gleich aus wie vorher.

    Ich habe mich inzwischen dran gewagt, deine Logs zu interpretieren. Sie bestätigen meinen Verdacht des Deadlocks meiner Meinung nach.

    Minimaler Auszug aus o.g. syslog:


    Ich habe noch ein Log mit mehr Debug Infos:



    Für sieht das so aus, als ob es einen deadlock über die beiden VDRs gibt. Jeder locked den gleichen Mutex für seinen eigenen SVDRP Client Request und zur Bearbeitung des ankommenden Server Request.


    Im Log habe ich nur den Lock vom Server Teil, den vom Client habe ich noch nicht gefunden.

    Eigentlich müsste der doch hier sein:

    Code
    bool cSVDRPClientHandler::Execute(const char *ServerName, const char *Command, cStringList *Response)
    {
      dsyslog("cSVDRPClientHandler::Execute want mutex");
      cMutexLock MutexLock(&mutex);
      dsyslog("cSVDRPClientHandler::Execute  got mutex");
      if (cSVDRPClient *Client = GetClientForServer(ServerName))
         return Client->Execute(Command, Response);
      return false;
    }

    Aber da bekomme ich keine Log Ausgabe ???