Use of uninitialized value

Begonnen von sw85, 18 Juni 2017, 10:00:08

Vorheriges Thema - Nächstes Thema

sw85

Hallo Zusammen,

ich habe seit ein paar Tagen nach jedem Neustart diese sechs Zeilen im Log stehen:

2017.06.18 09:48:52 1: PERL WARNING: Use of uninitialized value $d in hash element at fhem.pl line 4071.
2017.06.18 09:48:52 1: PERL WARNING: Use of uninitialized value $d in hash element at fhem.pl line 4071, <GEN21> line 27.
2017.06.18 09:48:52 1: PERL WARNING: Use of uninitialized value $FW_ME in concatenation (.) or string at ./FHEM/01_FHEMWEB.pm line 3035, <GEN21> line 27.
2017.06.18 09:48:52 1: PERL WARNING: Use of uninitialized value $FW_subdir in concatenation (.) or string at ./FHEM/01_FHEMWEB.pm line 3035, <GEN21> line 27.
2017.06.18 09:48:52 1: PERL WARNING: Use of uninitialized value $FW_CSRF in concatenation (.) or string at ./FHEM/01_FHEMWEB.pm line 3035, <GEN21> line 27.
2017.06.18 09:48:52 1: PERL WARNING: Use of uninitialized value $room in concatenation (.) or string at ./FHEM/73_MPD.pm line 2154, <GEN21> line 27.


Hat eventuell jemand nen Tipp, woran das liegt? 
System 1: NUC mit Intel Celeron: Fhem mit Tablet-UI, VPN, Nextcloud und Kodi
System 2: RPI 2 mit DHT22, 433Mhz-Sender und Raspi-Cam
Peripherie: HM-Lan mit Fensterkontakten und Heizkörperthermostaten, HarmonyHub, Altes Tablet als Bildschirm

Prof. Dr. Peter Henning

1. Steht doch drin - es werden in verschiedenen Modulen die genannten Variablen verwendet, bevor sie mit Inhalt gefüllt wurden

2. Wieso Neustart ? Wer um Himmels Willen startet denn sein FHEM innerhalb von ein paar Tagen mehrfach neu ?

LG

pah


sw85

Zitat von: Prof. Dr. Peter Henning am 18 Juni 2017, 12:22:32
1. Steht doch drin - es werden in verschiedenen Modulen die genannten Variablen verwendet, bevor sie mit Inhalt gefüllt wurden

Das ist mir schon klar.  ;)
Warum ist die Frage.

Zitat von: Prof. Dr. Peter Henning am 18 Juni 2017, 12:22:32
2. Wieso Neustart ? Wer um Himmels Willen startet denn sein FHEM innerhalb von ein paar Tagen mehrfach neu ?

Jeder der die Updates macht  :P
System 1: NUC mit Intel Celeron: Fhem mit Tablet-UI, VPN, Nextcloud und Kodi
System 2: RPI 2 mit DHT22, 433Mhz-Sender und Raspi-Cam
Peripherie: HM-Lan mit Fensterkontakten und Heizkörperthermostaten, HarmonyHub, Altes Tablet als Bildschirm

Prof. Dr. Peter Henning

ZitatWarum ist die Frage.

Das kommt in den besten Modulen vor - beispielsweise, wenn der Modulautor ein exotische Variante der Fehlkonfiguration durch den DAU übersehen hat. => Ignorieren, wenn es keine weiteren Effekte gibt.

ZitatJeder der die Updates macht

Ein tägliches Update ist nicht zu empfehlen.

LG

pah

betateilchen

-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Prof. Dr. Peter Henning

#5
Meine subjektive Sicht:

Weil die Update-Frequenz der meisten Module so gering ist, dass selbst große FHEM-Installationen in den weitaus meisten Fällen im Durchschnitt (!!) keine Verbesserung erfahren.
Und weil man sonst nicht erfährt, ob die eigene Installation stabil läuft.
Und weil man gut laufende Systeme nur anfasst, wenn dies notwendig wird.

Das gilt natürlich nicht, wenn ein konkreter Fehler in den Modulen behoben wurde, die man selber einsetzt - das sollte man natürlich möglichst umgehend nach Fehlerbehebung updaten.
Das gilt natürlich auch nicht, wenn wichtige (oder gar kritische) Änderungen an der fhem.pl vorgenommen worden sind.
Und es gilt ebenfalls nicht, wenn ein neuer Fehler auftritt, den man hier im Forum melden möchte. Auch das sollte nur bei aktuellem Stand geschehen.

Über die sinnvolle Update-Frequenz kann man sicher trefflich streiten. Ich denke, aber, dass von den drei genannten Ausnahmen abgesehen ein Update pro Woche ausreichen sollte.

LG

pah

betateilchen

-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Prof. Dr. Peter Henning

Na, dann teile uns doch mal Deine Sicht mit - eigentlich bist Du doch um Worte nicht verlegen ?

LG

pah

betateilchen

Mich hatte nur Deine pauschale Aussage, dass ein tägliches Update nicht zu empfehlen sei, irritiert.

Zum Einen geht es hier im Thread eigentlich um ein ganz anderes Thema,
zum Zweiten gehört eine solche (Grundsatz-)diskussion m.E. nicht unbedingt in den Anfängerbereich.

In Anlehnung an ein (irgendwann vielleicht) historisches Zitat: "Ein Teil dieser Antworten Diskussion würde die Bevölkerung FHEM-Anfänger verunsichern"
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Amenophis86

Ich würde mich freuen, wenn wir wieder zum Thema zurück kommen und ihr eure Fehde gerne wo anders austragt :)

An sw85:
In deinem Fall kannst du dich zB an die Modulautoren wenden und drauf Hinweis. Der Grund wurde durch pah ja bereits erklärt.
Aktuell dabei unser neues Haus mit KNX am einrichten. Im nächsten Schritt dann KNX mit FHEM verbinden. Allein zwei Dinge sind dabei selten: Zeit und Geld...

Prof. Dr. Peter Henning

Zitateure Fehde

Äh - wie ? Udo und ich befehden uns sicher nicht.

LG

pah

Amenophis86

Ach pah, du weißt genau was ich meine :)
Aktuell dabei unser neues Haus mit KNX am einrichten. Im nächsten Schritt dann KNX mit FHEM verbinden. Allein zwei Dinge sind dabei selten: Zeit und Geld...

Prof. Dr. Peter Henning

ZitatAnti-Statement befreite Zone

LG

pah

Elektrolurch

Zitat:
Das kommt in den besten Modulen vor - beispielsweise, wenn der Modulautor ein exotische Variante der Fehlkonfiguration durch den DAU übersehen hat. => Ignorieren, wenn es keine weiteren Effekte gibt.

Die Aussage ist Blödsinn: Woher soll ein Anfänger das Wissen haben, mögliche Seiteneffekte überhaupt feststellen zu können.
Die Praxis hat nämlich das Gegenteil bewiesen: Jede "Unsauberkeit" im Code - und dazu gehören auch nicht korekt initialisierte Variablen - zeugt vom schlechten Programmierstil und führt, wie dieser Beitrag zeigt, bei anderen Nutzern zu Verunsicherung.
Code muss auch auf die hier unterstellten Unzulänglichkeiten von DAUs gehärtet sein.

Ich achte strikt darauf, dass möglichst wenig Einträge in einem log-File sich befinden. In der Regel soll ein log-File ja helfen, Fehler rechtzeitig zu erkennen. Es gibt nichts schlimmeres als zugemüllte log-Files, die niemand mehr ansieht.

Konstruktiver Vorschlag statt "ignorieren": Modulautor kontaktieren.

Elektrolurch
configDB und Windows befreite Zone!