Ich bekomme seit meinem fhem update folgende Fehlermeldung:
readingsUpdate(dwd,alert_headline,Amtliche WARNUNG vor FROST ) missed to call readingsBeginUpdate first.
2017.02.16 07:08:30.788 1: stacktrace:
2017.02.16 07:08:30.789 1: main::readingsBulkUpdate called by fhem.pl (4134)
2017.02.16 07:08:30.789 1: main::readingsEndUpdate called by ./FHEM/55_GDS.pm (1029)
2017.02.16 07:08:30.789 1: main::decodeCAPData called by ./FHEM/55_GDS.pm (541)
2017.02.16 07:08:30.789 1: main::GDS_Get called by fhem.pl (3302)
2017.02.16 07:08:30.790 1: main::CallFn called by fhem.pl (1714)
2017.02.16 07:08:30.790 1: main::CommandGet called by fhem.pl (1107)
2017.02.16 07:08:30.790 1: main::AnalyzeCommand called by fhem.pl (976)
2017.02.16 07:08:30.790 1: main::AnalyzeCommandChain called by ./FHEM/91_notify.pm (102)
2017.02.16 07:08:30.791 1: main::notify_Exec called by fhem.pl (3302)
2017.02.16 07:08:30.791 1: main::CallFn called by fhem.pl (3223)
2017.02.16 07:08:30.791 1: main::DoTrigger called by ./FHEM/55_GDS.pm (1246)
2017.02.16 07:08:30.791 1: main::_finishedCAPDATA called by (eval 79188) (1)
2017.02.16 07:08:30.792 1: (eval) called by fhem.pl (1028)
2017.02.16 07:08:30.792 1: main::AnalyzePerlCommand called by fhem.pl (1048)
2017.02.16 07:08:30.793 1: main::AnalyzeCommand called by fhem.pl (976)
2017.02.16 07:08:30.793 1: main::AnalyzeCommandChain called by ./FHEM/98_telnet.pm (269)
2017.02.16 07:08:30.793 1: main::telnet_Read called by fhem.pl (3302)
2017.02.16 07:08:30.794 1: main::CallFn called by fhem.pl (674)
Auslöser scheint folgendes userReadings vom GDS device "dwd" zu sein, was ich aber schon ganz lange habe und vor dem Update ohne Fehlermeldung lief.
attr dwd userReadings alert_headline { ReadingsVal("dwd","a_0_headline","Keine Unwetterwarnung")." ".ReadingsVal("dwd","a_1_event","")." ".ReadingsVal("dwd","a_2_event","");;;; },alert_headline_exists { (ReadingsVal("dwd","a_0_headline","Keine Unwetterwarnung") eq "Keine Unwetterwarnung") ? 0 : 1;;;; }
Jemand eine Ahnung was die Ursache ist und wie ich das Problem beheben kann?
ZitatJemand eine Ahnung was die Ursache ist
Das Modul 55_GDS.pm benimmt sich in manchen Situation nicht vorbildlich.
Zitatund wie ich das Problem beheben kann?
Den Autor auf das Problem aufmerksam machen. Da das Modul aber aus contrib (== unsupported) stammt, kann sein, dass er mit den Schultern zuckt, das ist sein gutes Recht.
hmm, komisch. Eigentlich ist es ja nur ein userReadings attr vom GDS. Ich frage aber betateilchen nochmal.
Ich sehe auch gerade, dass es die Fehlermeldungen auch schon vor dem fhem update gabe, neu ist nur der stacktrace...
Kann bestätigen, dass es am GDS Modul liegt.
Problem ist wohl die Verwendung von readingsSingleUpdate innerhalb eines readingsBeginUpdate/readingsEndUpdate Blocks in der GDS Funktion decodeCAPData
Zitat von: rudolfkoenig am 16 Februar 2017, 19:41:25
Das Modul 55_GDS.pm benimmt sich in manchen Situation nicht vorbildlich.
na na na... das hat sich aber letztes Jahr erheblich gebessert :)
Zitat von: rudolfkoenig am 16 Februar 2017, 19:41:25
Den Autor auf das Problem aufmerksam machen.
Ja, und zwar am Besten im richtigen Forumbereich!
Zitat von: rudolfkoenig am 16 Februar 2017, 19:41:25
Da das Modul aber aus contrib (== unsupported) stammt, kann sein, dass er mit den Schultern zuckt, das ist sein gutes Recht.
Eigentlich habe ich noch nie mit den Schultern gezuckt, wenn sowas auftrat.
Welche Modulversion habt Ihr im Einsatz?
Ich habe die aktuelle Version aus dem contrib. Fehler ist in den Zeilen 1019 und 1026. Hier verwendest Du readingSingleUpdate statt readingBulkUpdate.
Habe es bei mir lokal korrigiert. Der Fehler tritt dann nicht mehr auf.
danke, geht bei mir jetzt auch...
danke auch an betateilchen,rudolf und zap!
@betateilchen: danke für das schnelle Update im contrib :)
Danke auch von mir!