Wieder ein.: Use of uninitialized value $value in string eq at fhem.pl line 4807

Begonnen von choetzu, 12 August 2020, 15:44:07

Vorheriges Thema - Nächstes Thema

choetzu

Hallo,

ich schnall es einfach nicht. Ich habe seit kurzem folgende Logeinträge. Auch ein Update hat keine Abhilfe gebracht.

[Wed Aug 12 14:40:32 2020] fhem.pl: Use of uninitialized value $value in string eq at fhem.pl line 4807.
[Wed Aug 12 14:40:32 2020] fhem.pl: Use of uninitialized value $value in string eq at fhem.pl line 4807.
[Wed Aug 12 14:46:33 2020] fhem.pl: Use of uninitialized value $value in string eq at fhem.pl line 4807.
[Wed Aug 12 14:46:33 2020] fhem.pl: Use of uninitialized value $value in string eq at fhem.pl line 4807.
[Wed Aug 12 14:52:34 2020] fhem.pl: Use of uninitialized value $value in string eq at fhem.pl line 4807.
[Wed Aug 12 14:52:34 2020] fhem.pl: Use of uninitialized value $value in string eq at fhem.pl line 4807.
[Wed Aug 12 14:58:35 2020] fhem.pl: Use of uninitialized value $value in string eq at fhem.pl line 4807.
[Wed Aug 12 14:58:35 2020] fhem.pl: Use of uninitialized value $value in string eq at fhem.pl line 4807.


wenn ich nun die Zeile 4807 im fhem.pl nachschaue, steht da:
return undef if($value eq ReadingsVal($hash->{NAME},$reading,""));

und diese Zeile ist im Block
sub
readingsBulkUpdateIfChanged($$$@) # Forum #58797
{
  my ($hash,$reading,$value,$changed)= @_;
  return undef if($value eq ReadingsVal($hash->{NAME},$reading,""));
  return readingsBulkUpdate($hash,$reading,$value,$changed);
}


Ich habe keine Ahnung was ich nun damit anfangen soll und wie ich die Fehlersuche eingrenzen könnte. Das einzige was ersichtlich ist, dass es ein Device sein muss, dass alle 6 Minuten updatet.. aber da habe ich einige ;)

Bin um Hilfestellung ungemein dankbar.
Merci.

Lg c
Raspi3, EnOcean, Zwave, Homematic

frank

FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html

choetzu

hallo Frank
danke, an das habe ich auch gedacht und bereits gemacht (attr global stacktrace 1).. Aber im Log kamen keine anderen oder erweiterten Einträge. Komisch..
Lg c.
Raspi3, EnOcean, Zwave, Homematic

betateilchen

Die Meldung wird nicht von fhem.pl verursacht, sondern von einem Modul, das die Funktion readingsBulkUpdateIfChanged() verwendet.
Schauen wir doch einfach mal nach, welche Module diese Funktion überhaupt verwenden, allzu viele sind es nicht...


00_ElsnerWS.pm
00_Neuron.pm
00_SONOS.pm
10_EnOcean.pm
10_NeuronPin.pm
10_RESIDENTS.pm
21_SONOSPLAYER.pm
22_HOMEMODE.pm
24_Iluminize.pm
31_Nello.pm
36_Shelly.pm
37_echodevice.pm
37_plex.pm
37_Spotify.pm
42_AptToDate.pm
42_npmjs.pm
46_Aqicn.pm
46_SmartPi.pm
46_TeslaPowerwall2AC.pm
49_SSCam.pm
49_SSCamSTRM.pm
50_HP1000.pm
50_MOBILEALERTSGW.pm
51_MOBILEALERTS.pm
55_PIFACE.pm
57_SSCal.pm
58_HVAC_DaikinAC.pm
59_LuftdatenInfo.pm
59_Wunderground.pm
70_BOTVAC.pm
70_BRAVIA.pm
70_ENIGMA2.pm
70_HYDRAWISE.pm
70_LaMetric2.pm
70_NEUTRINO.pm
70_OctoPrint.pm
70_PHTV.pm
70_Pushover.pm
70_SamsungAV.pm
70_WINCONNECT.pm
71_COE_Node.pm
71_YAMAHA_AVR.pm
71_YAMAHA_MC.pm
71_ZM_Monitor.pm
72_TA_CMI_JSON.pm
73_GardenaSmartBridge.pm
73_PRESENCE.pm
74_AMADDevice.pm
74_GardenaSmartDevice.pm
74_THINKINGCLEANER.pm
74_UnifiVideo.pm
74_XiaomiBTLESens.pm
76_SMAPortal.pm
76_SMAPortalSPG.pm
82_LGTV_WebOS.pm
95_Astro.pm
95_YAAHM.pm
96_Snapcast.pm
97_PiXtendV2.pm
98_Installer.pm
98_ModbusElsnerWS.pm
98_QRCode.pm
HOMESTATEtk.pm
RESIDENTStk.pm


Jetzt musst Du nur noch rausfinden, welche dieser Module Du verwendest - dann hast Du die möglichen Verursacher eingegrenzt.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

betateilchen

Du kannst auch folgendes probieren:



sub
readingsBulkUpdateIfChanged($$$@) # Forum #58797
{
  my ($hash,$reading,$value,$changed)= @_;
Debug $hash->{NAME};
  return undef if($value eq ReadingsVal($hash->{NAME},$reading,""));
  return readingsBulkUpdate($hash,$reading,$value,$changed);
}


und dann im Log nachschauen, welche Debug Meldung da auftaucht.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

choetzu

Super, danke betateilchen, der Hammer...

das hat schonmal den Uebeltäter ausgespuckt..YEAHH. Es liegt also am 73_GardenaSmartBridge.pm/74_GardenaSmartDevice.pm

Das wurde geloggt:

[Wed Aug 12 17:41:54 2020] fhem.pl: Use of uninitialized value $value in string eq at fhem.pl line 4808.
2020.08.12 17:41:54 1:  DEBUG>GardenaSystem
2020.08.12 17:41:54 1:  DEBUG>GardenaSystem
2020.08.12 17:41:54 1:  DEBUG>GardenaSystem
2020.08.12 17:41:54 1:  DEBUG>GardenaSystem
2020.08.12 17:41:54 1:  DEBUG>GardenaSystem
2020.08.12 17:41:54 1:  DEBUG>GardenaSystem
2020.08.12 17:41:54 1:  DEBUG>GardenaSystem
2020.08.12 17:41:54 1:  DEBUG>GardenaSystem
2020.08.12 17:41:54 1:  DEBUG>GardenaSystem
[Wed Aug 12 17:41:54 2020] fhem.pl: Use of uninitialized value $value in string eq at fhem.pl line 4808.
2020.08.12 17:41:54 1:  DEBUG>GardenaSystem
2020.08.12 17:41:54 1:  DEBUG>GardenaSystem
2020.08.12 17:41:54 1:  DEBUG>GardenaSystem
2020.08.12 17:41:54 1:  DEBUG>GardenaSystem
2020.08.12 17:41:54 1:  DEBUG>GardenaSystem
2020.08.12 17:41:54 1:  DEBUG>GardenaSystem
2020.08.12 17:41:54 1:  DEBUG>GardenaSystem
2020.08.12 17:41:54 1:  DEBUG>GardenaSystem
2020.08.12 17:41:54 1:  DEBUG>GardenaSystem
2020.08.12 17:41:54 1:  DEBUG>GardenaSystem
2020.08.12 17:41:54 1:  DEBUG>GardenaSystem
2020.08.12 17:41:54 1:  DEBUG>GardenaSystem
2020.08.12 17:41:54 1:  DEBUG>GardenaSystem
2020.08.12 17:41:54 1:  DEBUG>GardenaSystem
2020.08.12 17:41:54 1:  DEBUG>GardenaSystem
2020.08.12 17:41:54 1:  DEBUG>GardenaSystem
2020.08.12 17:41:54 1:  DEBUG>Water_Control
2020.08.12 17:41:54 1:  DEBUG>Water_Control
2020.08.12 17:41:54 1:  DEBUG>Water_Control
2020.08.12 17:41:54 1:  DEBUG>Water_Control
2020.08.12 17:41:54 1:  DEBUG>Water_Control
2020.08.12 17:41:54 1:  DEBUG>Water_Control
2020.08.12 17:41:54 1:  DEBUG>Water_Control
2020.08.12 17:41:54 1:  DEBUG>Water_Control
2020.08.12 17:41:54 1:  DEBUG>Water_Control
2020.08.12 17:41:54 1:  DEBUG>Water_Control
2020.08.12 17:41:54 1:  DEBUG>Water_Control
2020.08.12 17:41:54 1:  DEBUG>Water_Control
2020.08.12 17:41:54 1:  DEBUG>Water_Control
2020.08.12 17:41:54 1:  DEBUG>Water_Control
2020.08.12 17:41:54 1:  DEBUG>Water_Control
2020.08.12 17:41:54 1:  DEBUG>Water_Control
2020.08.12 17:41:54 1:  DEBUG>Water_Control
2020.08.12 17:41:54 1:  DEBUG>Water_Control
2020.08.12 17:41:54 1:  DEBUG>Rhabarberbeet
2020.08.12 17:41:54 1:  DEBUG>Rhabarberbeet
2020.08.12 17:41:54 1:  DEBUG>Rhabarberbeet
2020.08.12 17:41:54 1:  DEBUG>Rhabarberbeet
2020.08.12 17:41:54 1:  DEBUG>Rhabarberbeet
2020.08.12 17:41:54 1:  DEBUG>Rhabarberbeet
2020.08.12 17:41:54 1:  DEBUG>Rhabarberbeet
2020.08.12 17:41:54 1:  DEBUG>Rhabarberbeet
2020.08.12 17:41:54 1:  DEBUG>Rhabarberbeet
2020.08.12 17:41:54 1:  DEBUG>Rhabarberbeet
2020.08.12 17:41:54 1:  DEBUG>Rhabarberbeet
2020.08.12 17:41:54 1:  DEBUG>Rhabarberbeet
2020.08.12 17:41:54 1:  DEBUG>Rhabarberbeet
2020.08.12 17:41:54 1:  DEBUG>Rhabarberbeet
2020.08.12 17:41:54 1:  DEBUG>Rhabarberbeet
2020.08.12 17:41:54 1:  DEBUG>Rhabarberbeet
2020.08.12 17:41:54 1:  DEBUG>Rhabarberbeet
2020.08.12 17:41:55 1:  DEBUG>Heidelbeerbeet
2020.08.12 17:41:55 1:  DEBUG>Heidelbeerbeet
2020.08.12 17:41:55 1:  DEBUG>Heidelbeerbeet
2020.08.12 17:41:55 1:  DEBUG>Heidelbeerbeet
2020.08.12 17:41:55 1:  DEBUG>Heidelbeerbeet
2020.08.12 17:41:55 1:  DEBUG>Heidelbeerbeet
2020.08.12 17:41:55 1:  DEBUG>Heidelbeerbeet
2020.08.12 17:41:55 1:  DEBUG>Heidelbeerbeet
2020.08.12 17:41:55 1:  DEBUG>Heidelbeerbeet
2020.08.12 17:41:55 1:  DEBUG>Heidelbeerbeet
2020.08.12 17:41:55 1:  DEBUG>Heidelbeerbeet
2020.08.12 17:41:55 1:  DEBUG>Heidelbeerbeet
2020.08.12 17:41:55 1:  DEBUG>Heidelbeerbeet
2020.08.12 17:41:55 1:  DEBUG>Heidelbeerbeet
2020.08.12 17:41:55 1:  DEBUG>Heidelbeerbeet
2020.08.12 17:41:55 1:  DEBUG>Heidelbeerbeet
2020.08.12 17:41:55 1:  DEBUG>Heidelbeerbeet
2020.08.12 17:41:55 1:  DEBUG>Ventile
2020.08.12 17:41:55 1:  DEBUG>Ventile
2020.08.12 17:41:55 1:  DEBUG>Ventile
2020.08.12 17:41:55 1:  DEBUG>Ventile
2020.08.12 17:41:55 1:  DEBUG>Ventile
2020.08.12 17:41:55 1:  DEBUG>Ventile
2020.08.12 17:41:55 1:  DEBUG>Ventile
2020.08.12 17:41:55 1:  DEBUG>Ventile
2020.08.12 17:41:55 1:  DEBUG>Ventile
2020.08.12 17:41:55 1:  DEBUG>Ventile
2020.08.12 17:41:55 1:  DEBUG>Ventile
2020.08.12 17:41:55 1:  DEBUG>Ventile
2020.08.12 17:41:55 1:  DEBUG>Ventile
2020.08.12 17:41:55 1:  DEBUG>Ventile
2020.08.12 17:41:55 1:  DEBUG>Ventile
2020.08.12 17:41:55 1:  DEBUG>Ventile
2020.08.12 17:41:55 1:  DEBUG>Ventile
2020.08.12 17:41:55 1:  DEBUG>Ventile
2020.08.12 17:41:55 1:  DEBUG>Ventile
2020.08.12 17:41:55 1:  DEBUG>Ventile
2020.08.12 17:41:55 1:  DEBUG>Brombeerbeet
2020.08.12 17:41:55 1:  DEBUG>Brombeerbeet
2020.08.12 17:41:55 1:  DEBUG>Brombeerbeet
2020.08.12 17:41:55 1:  DEBUG>Brombeerbeet
2020.08.12 17:41:55 1:  DEBUG>Brombeerbeet
2020.08.12 17:41:55 1:  DEBUG>Brombeerbeet
2020.08.12 17:41:55 1:  DEBUG>Brombeerbeet
2020.08.12 17:41:55 1:  DEBUG>Brombeerbeet
2020.08.12 17:41:55 1:  DEBUG>Brombeerbeet
2020.08.12 17:41:55 1:  DEBUG>Brombeerbeet
2020.08.12 17:41:55 1:  DEBUG>Brombeerbeet
2020.08.12 17:41:55 1:  DEBUG>Brombeerbeet
2020.08.12 17:41:55 1:  DEBUG>Brombeerbeet
2020.08.12 17:41:55 1:  DEBUG>Brombeerbeet
2020.08.12 17:41:55 1:  DEBUG>Brombeerbeet
2020.08.12 17:41:55 1:  DEBUG>Brombeerbeet
2020.08.12 17:41:55 1:  DEBUG>Brombeerbeet


Doch, was genau ist das Problem? Und wie löse ich das nun? Sorry die Fragerei, aber habe no clue...

danke.
lg C
Raspi3, EnOcean, Zwave, Homematic

betateilchen

Zitat von: choetzu am 12 August 2020, 17:45:54
Doch, was genau ist das Problem?

Das Problem ist, dass versucht wird, einen nicht vorhandenen Wert in ein reading zu schreiben.
Du kannst das höchstwahrscheinlich nicht selbst lösen, aber Du weißt jetzt zumindest, in welche Forumrubrik Deine Frage gehört, damit sich der zuständige Modulautor damit befassen kann.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

choetzu

wird gemacht!

https://forum.fhem.de/index.php/topic,75098.msg1077848.html#new



Danke für die Hilfestellung!!

schönen "heissen" Abend. Lg c
Raspi3, EnOcean, Zwave, Homematic