FHEM Forum

FHEM => Sonstiges => Thema gestartet von: Sailor am 17 März 2018, 12:50:20

Titel: Absturz mit Fehlermeldung zu vec
Beitrag von: Sailor am 17 März 2018, 12:50:20
Hallo zusammen

seit ein paar Tagen beobachte ich häufiger Abstürze mit einem Eintrag im Log:
Negative offset to vec in lvalue context at fhem.pl line 639.

Die Zeile 639 in der fhem.pl lautet:
vec($rin, $hash->{FD}, 1) = 1

Hat Jemand ähnliche Erfahrungen gemacht und wenn ja, wie lautet die Abhilfe?

Danke!

Gruss
    Sailor
Titel: Antw:Absturz mit Fehlermeldung zu vec
Beitrag von: rudolfkoenig am 17 März 2018, 16:15:59
Vermutlich hat jemand vorsorglich ein $hash->{FD} auf -1 gesetzt.
Kannst du bitte vor Zeile 639 Folgendes einfuegen, und testen?
if($hash->{FD} < 0) {
  Log 1, "ERROR: negative FD in $hash->{NAME}"
  continue;
}
Titel: Antw:Absturz mit Fehlermeldung zu vec
Beitrag von: betateilchen am 17 März 2018, 19:34:59
... oder jemand hat perl 5.26.x im Einsatz (genaue Version weiß ich gerade nicht), da gibt es ein (bekanntes) Problem, das genau zu dieser Fehlermeldung führt.
Titel: Antw:Absturz mit Fehlermeldung zu vec
Beitrag von: Sailor am 18 März 2018, 12:09:26
Hallo Rudi

Danke für deine schnelle Antwort

Zitat von: rudolfkoenig am 17 März 2018, 16:15:59
Vermutlich hat jemand vorsorglich ein $hash->{FD} auf -1 gesetzt.

Wer macht denn so was?  ;)
Im Ernst: Wozu ist "$hash->{FD}" überhaupt da?

Zitat von: rudolfkoenig am 17 März 2018, 16:15:59
Kannst du bitte vor Zeile 639 Folgendes einfuegen, und testen?
if($hash->{FD} < 0) {
  Log 1, "ERROR: negative FD in $hash->{NAME}"
  continue;
}


Habe ich gemacht und so weit so gut... Leider bekomme ich eine Ausgabe beim Start von fhem in der Konsole
Job for fhem.service failed. See 'systemctl status fhem.service' and 'journalctl -xn' for details.
und fhem laesst sich nicht starten.

Ein entfernen des o.g. Code-Fragments macht fhem wieder startfähig.

Gruss
    Sailor
Titel: Antw:Absturz mit Fehlermeldung zu vec
Beitrag von: Sailor am 18 März 2018, 12:10:49
Hallo betateilchen

Zitat von: betateilchen am 17 März 2018, 19:34:59
... oder jemand hat perl 5.26.x im Einsatz (genaue Version weiß ich gerade nicht), da gibt es ein (bekanntes) Problem, das genau zu dieser Fehlermeldung führt.

Heisst das ein "Update" von perl würde das Problem lösen?

Gruss
    Sailor
Titel: Antw:Absturz mit Fehlermeldung zu vec
Beitrag von: rudolfkoenig am 18 März 2018, 12:34:00
Zitatund fhem laesst sich nicht starten.
Sorry, ein ; hat gefehlt:
      if($hash->{FD} < 0) {
        Log 1, "ERROR: negative FD in $hash->{NAME}";
        continue;
      }
Titel: Antw:Absturz mit Fehlermeldung zu vec
Beitrag von: Sailor am 18 März 2018, 16:59:53
Zitat von: rudolfkoenig am 18 März 2018, 12:34:00
Sorry, ein ; hat gefehlt:

Oh Mann, hätte ich auch selbst drauf kommen können!  :o

Ok, ich melde mich, sobald die Fehlermeldung wieder auftritt.

Gruss
    Sailor
Titel: Antw:Absturz mit Fehlermeldung zu vec
Beitrag von: Sailor am 20 März 2018, 13:57:37
Treffer!

2018.03.20 10:39:22.893 1: ERROR: negative FD in GOOGLECAST-TR_Googlecast
Can't "continue" outside a when block at fhem.pl line 641


Habe es gleich ins forum plaziert: https://forum.fhem.de/index.php/topic,45505.msg784094.html#msg784094 (https://forum.fhem.de/index.php/topic,45505.msg784094.html#msg784094)

Gruss
    Sailor
Titel: Antw:Absturz mit Fehlermeldung zu vec
Beitrag von: rudolfkoenig am 20 März 2018, 14:56:18
ZitatCan't "continue" outside a when block at fhem.pl line 641
Sorry, das haette next heissen sollen statt continue.

Titel: Antw:Absturz mit Fehlermeldung zu vec
Beitrag von: Sailor am 20 März 2018, 19:52:46
Zitat von: rudolfkoenig am 20 März 2018, 14:56:18
Sorry, das haette next heissen sollen statt continue.

Korrigiert


      if($hash->{FD} < 0) {
        Log 1, "ERROR: negative FD in $hash->{NAME}";
        next;
      }


Gruss
    Sailor