epgd: Error: SVDRPCL: Timeout waiting server reply <ip>

  • Ich bekomme regelmäßig o.g. Syslog Meldung von eggd.

    Die Ursache hierzu ist, dass epgd zum Abschluss des Befehls von cEpgd::triggerVdrs keinen Quit sendet und somit der VDR das Ende des Befehls nicht erkennt.

    horchi : Kannst du bitte diesen Patch ansehen und übernehmen:


    Edit: Analyse der Ursache und somit Patch Vorschlag falsch, siehe unten

    3 Mal editiert, zuletzt von kfb77 ()

  • bist du dir mit dem close() vor dem receive() sicher?
    Wäre es nicht richtig das vorhandene close() auf eins mit Quit zu ändern:

    Einmal editiert, zuletzt von horchi ()

  • bist du dir mit dem close() vor dem receive() sicher?

    Nein, da hast du Recht, das macht kein Sinn, obwohl es die Fehlermeldung weg bringt. Aber nur dadurch, dass der receive gar nicht mehr funktioniert weil der Socket weg ist und er keinen Timeout mehr erzeugt kann. Funktioniert aber trotzdem, weil er die Rückmeldung (result) eh nicht auswertet.

    Dein Vorschlag macht mehr Sinn, bringt aber den Timeout nicht weg.

    Mir ist aber noch was anderes aufgefallen:

    Code
    cl.receive(&result, 2);

    Warum nur 2ms timeout bei dem receive. Klar, dass er damit in einen Timeout läuft.

    Code
    cl.receive(&result);

    Mit nur der der Änderung im originalem Code nimmt er den default Timeout Wert und die Syslog Meldungen sind auch weg.

  • okay passe ich für die nächste Version an, danke fürs testen

  • ist mit der neuen Version heute Morgen ins git gekommen

Jetzt mitmachen!

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