Problem nach Update heute

Begonnen von Bernhard, 23 April 2014, 09:29:03

Vorheriges Thema - Nächstes Thema

Bernhard

Hallo,

nach Update heute kommt folgender Fehler (im log), fhem wird beendet

2014.04.23 08:31:31 1: update 44 file(s) have been updated.
2014.04.23 08:31:31 1: update A new version of fhem.pl was installed, 'shutdown restart' is required!
Undefined subroutine &main::configDBUsed called at ./FHEM/98_fheminfo.pm line 312.

Läuft auf Fritzbox 7390, FRITZ!OS 06.03.

Bernhard


rudolfkoenig

Dann schlagen wir mal ein restart vor, und sehen, was danach passiert.
Ich vermute mit dem Aenderung von fheminfo ist es normal, dass diese Meldung einmal kommt.

betateilchen

Das Problem tritt immer dann auf, wenn update gleichzeitig eine neue fhem.pl UND neue Module aktualisiert, wenn fhem.pl neue Funktionen enthält, die von den gleichzeitig aktualisierten Modulen benötigt werden. Die Module werden nach dem Update offenbar (wieder?) automatisch neugeladen, die fhem.pl aber nicht (weil dazu ein Neustart gebraucht wird).

Mit ist übrigens aufgefallen, dass das im Hintergrund ablaufende Update bei mit zwar den Event-Monitor einschaltet, dort aber keine Updatemeldungen erscheinen. Wobei ich noch nicht genau sagen kann, ob das Verhalten style-abhängig ist. Zumindest beim dark-style kann ich das reproduzieren, beim default-style verhält sich das update im Background wie immer (Meldungen erscheinen im Event-Monitor)
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

marvin78

Ich nutze auch einen (leicht modifizierten) darkstyle und bei mir erscheinen die Update-Meldungen im Event-Monitor, wie gewohnt (reproduzierbar).

Bernhard

@rudolfkoenig:
normalerweise mache ich nach "update" einen "shutdown restart". aber heute kams es nicht mehr so weit, da fhem sich verabschiedete (das 1. mal).

habe dann von der >COmmandine (Fritzbox neu gestartet)

@betateilchen.

auf der Fritzbox sehe ich kein (automatisches) Protokoll wie bei Monitor, jedoch bei der normalen Installation auf dem rPi - hab mich auch schon gewundert, aberuntersucht nicht weiter

betateilchen

Zitat von: Bernhard am 23 April 2014, 18:51:14
normalerweise mache ich nach "update" einen "shutdown restart". aber heute kams es nicht mehr so weit, da fhem sich verabschiedete (das 1. mal).

Ja, das kann heute tatsächlich passiert sein, es sollte aber eine absolute Ausnahme bleiben.
Das zugrundeliegende Problem habe ich oben schon beschrieben.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

C_Herrmann

Hallo,

wäre es dann nicht sinnvoll, wenn update prüft, ob die fhem.pl aktualisiert wird. Wenn ja, sollten die aktualisierten Module nicht automatisch neu gestartet werden, sondern erst beim "shutdown restart".

Gruß,
Christian
FHEM auf RPi, CUL868, FHT, UNIRoll, verschiedene FS20 Komponenten, IT, Zigbee zum Testen

betateilchen

Du kennst den Spaghetti-Code des update-Moduls nicht  :P

Ich denke, über aktuell erstmalig (!) aufgetretenen "Problemfall" sollten wir nicht allzuviel Aufhebens machen. Dafür kommt es viel zu selten vor, dass fhem.pl eine neue Funktion bekommt, die dann auch gleichzeitig in neuen Modulen verwendet wird. Ist halt nunmal ausnahmsweise passiert - ich verbuche das einfach unter "dumm gelaufen". Zumal der Neustart ja ohnehin notwendig und das Problem danach auch behoben war.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Future

Hallo,
wurde etwas in dem Modul LightScene geändert ?

meine ganzen Licht und Media Szenen sind weg  :-[ :-[ :-[ :-[
auch ist mir aufgefallen das die Dateien unterschiedlich sind.
altes format
{
  'tvscene' => {
                 'wecker_aus' => {
                                   'Samsung_TV' => 'off',
                                   'Onkyo' => 'off',
                                   'stecker_a4' => 'off',
                                   'd_Zone2' => 'off',
                                   'stecker_a8' => 'off',
                                   'PS3' => 'off',
                                   'Neo_standby' => 'on',
                                   'LS_Funksender' => 'off',
                                   'Zone2' => 'off'
                                 },

Neues Format :
{"tvscene":{"test":{"Onkyo":"on","d_InputSchlaf":"radio","d_Zone2":"off","Cooli":"on","Neo_standby":"off","stecker_a7":"on","d_InputFlur":"???","Samsung_TV":"on","stecker_a4":"off","d_Onkyo_Input":"tv","stecker_a8":"off","PS3":"off","d_Zone2_input":"cd","Zone2":"off"}}}

fhem startet auch nicht mehr wenn ich das "alte" Format nutze  :-\ :'(
FHEM 5.6 auf Brix
1xCUL433, 12x Elro AB440SC
Onkyo TX-NR515, Coolstream NEO, Samsung UE46F6500, HMLAN, 3x HM-PB-2-WM55-2, 2x HM-PB-6-WM55, 4x HM-CC-RT-DN, 3x HM-TC-IT-WM-W-EU, 1x HM-RC-4-2, 3x HM-LC-Sw1PBU-FM,1x HM-WDS10-TH-O

justme1968

an lightscene wurde nichts geändert.

das modul verwendet normalerweise JSON zum speichern der szenen. wenn das JSON modul nicht installiert ist wird als fallback Data::Dumper verwendete.

wenn du mit dem fallback startest und dann aus irgendeinem grund das JSON modul nachinstallierst wird versucht dieses zu verwenden und die alte config wird nicht mehr gefunden.

du kannst in 31_LightScene.pm am ende von LightScene_Define direkt vor dem aufruf von LightScene_Load ein $hash->{HAS_JSON} = 0 einbauen und direkt danach ein $hash->{HAS_JSON} = $LightScene_hasJSON;

dann fhem ein mal neu starten, abspeichern und die änderung wieder rückgängig machen.

damit hast du dann ein mal das alte format importiert und als json gespeichert.

wenn beim nächsten neustart alles geht kannst du das alte LightScenes.dd.save file löschen.

ich überlege mir einen besseren weg.

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

Bernhard

Zitat von: betateilchen am 23 April 2014, 19:04:14
Ja, das kann heute tatsächlich passiert sein, es sollte aber eine absolute Ausnahme bleiben.
Das zugrundeliegende Problem habe ich oben schon beschrieben.

ich kann damit normal schon leben. Aber wie der Teufel will, musste ich nach dem "update" weg und der ganze Krempel war tot und merkte das erst nach Stunden

justme1968

morgen mit dem update kennt LigthScene ein updateToJson kommando.

du kannst nach dem start ein malset TYPE=LightScene updateToJsoneingeben und danach sollte alles wieder ok sein.

wenn ja: das .dd.save file löschen.

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

betateilchen

Zitat von: Bernhard am 23 April 2014, 23:26:07
musste ich nach dem "update" weg und der ganze Krempel war tot und merkte das erst nach Stunden

In solchen zeitkritischen Situationen sollte man nie ein update starten.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

betateilchen

In der Version von 98_update.pm vom 20.04. werden übrigens - soweit ich das erkenn - keine Module neugeladen... (grade wegen anderer Aufgaben im Quelltext gestöbert)
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

rudolfkoenig

Das Problem ist, dass update zum Schluss "fheminfo" ausfuehrt. Wenn fheminfo vorher noch nicht geladen war, dann wird es geladen, und das ging schief, da fhem.pl noch alt ist.

betateilchen

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

tupol

Nach dem heutigen Update meldet FHEM für FHEMWEB
2014.04.24 12:05:11 1: WEB: Can't load Compress::Zlib, deactivating compression
2014.04.24 12:05:11 1: Can't locate Compress/Zlib.pm in @INC (@INC contains: /var/InternerSpeicher/fhem/lib/perl5/site_perl/5.12.2/mips-linux /var/InternerSpeicher/fhem/lib/perl5/site_perl/5.12.2/mips-linux /var/InternerSpeicher/fhem/lib/perl5/site_perl/5.12.2 /var/InternerSpeicher/fhem/lib/perl5/5.12.2/mips-linux /var/InternerSpeicher/fhem/lib/perl5/5.12.2/mips-linux /var/InternerSpeicher/fhem/lib/perl5/5.12.2 /opt/lib/perl5/site_perl/5.12.2/mips-linux /opt/lib/perl5/site_perl/5.12.2 /opt/lib/perl5/5.12.2/mips-linux /opt/lib/perl5/5.12.2 . ./FHEM) at ./FHEM/01_FHEMWEB.pm line 255.


Diese Meldung ist neu. Heißt das, ich hatte auch vorher schon keine Kompression auf der FritzBox nur ohne extra Meldung?

Gruß

Tupol

betateilchen

Nein, ich denke, da hat gestern jemand etwas in einem Modul gebaut und eingecheckt, ohne an die Fritzbox Nutzer zu denken.

Irgendwie muss man die ja irgendwann zu einer ordentlichen Hardware bekehren *duck-und-weg*
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

rudolfkoenig

Da dieses Modul in /var/InternerSpeicher/fhem/lib/perl5/5.12.2/Compress/Zlib.pm sein sollte und laut Fehlermeldung /var/InternerSpeicher/fhem/lib/perl5/5.12.2 in Pfad ist, ist diese Datei weg. Entweder wurde sie geloescht, oder das Dateisystem ist kaputt.

Bernhard

Zitat von: betateilchen am 24 April 2014, 09:51:48
In solchen zeitkritischen Situationen sollte man nie ein update starten.

würde gerne in die Zukunft gucken können - auch in die nahe ....

8)

tupol

Ich glaube nicht, dass da was kaputt ist. Meine FB bietet eine Zlib.pm in /var/InternerSpeicher/fhem/lib/perl5/5.12.2 (15 kB) und /var/InternerSpeicher/fhem/lib/perl5/5.12.2/mips-linux/Compress (42 kB) an.

Ein Verzeichnis/var/InternerSpeicher/fhem/lib/perl5/5.12.2/Compress gibt es nicht.

rudolfkoenig

ZitatIch glaube nicht, dass da was kaputt ist.

Was soll man dazu schon sagen :)

Wenn es im @INC nicht irgendwo ein Zlib.pm in einem Compress Verzeichnis existiert, dann ist die Fehlermeldung berechtigt. Und auf meinem 7390 gibt es ein Compress/Zlib.pm an der vorher erwaehnten Stelle. Wuesste gerne, wer das Compress Verzeichnis auf deinem Rechner wegoptimiert hat, sowas macht update sicher nicht.

tupol

OK. Danke für die Hilfe, jetzt habe ich es verstanden. Ich werde mir das Verzeichnis einfach aus dem FB-Image holen und meine FritzBox mit etwas mehr Misstrauen strafen. :-)

betateilchen

Zitat von: tupol am 24 April 2014, 21:40:40
meine FritzBox mit etwas mehr Misstrauen strafen

In meinem Lexikon ist unter "Misstrauen gegen Fritzbox" folgendes Bild zu finden:

(http://www.bauunternehmen.com/files/images/walz-strassenwalze.jpg)
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!