FHEM Forum

FHEM - Hausautomations-Systeme => 1Wire => Thema gestartet von: erwin am 08 April 2016, 09:31:39

Titel: OWX_ASYNC race condition?
Beitrag von: erwin am 08 April 2016, 09:31:39
Hi,
ich habe, so scheint es eine race condition mit OWX_ASYNC:
def:Internals:
   DEF        192.168.5.51:9000
   DeviceName 192.168.5.51:9000
   INTERFACE  serial
   NAME       1W_WIFI
   NEXT_OPEN  1459865888
   NOTIFYDEV  global
   NR         57
   NTFY_ORDER 50-1W_WIFI
   PARTIAL
   ROM_ID     FF
   STATE      disconnected
   TYPE       OWX_ASYNC
   ALARMDEVS:
   DEVS:
   Readings:
     2016-04-05 16:17:08   state           disconnected
   Tasks:
Attributes:
   room       OWDevice

... und zwar, falls das Gerät gerade mal nicht erreichbar ist (TCP)
Im Log schaut das dann so aus:
2016.04.05 16:09:44 0: Featurelevel: 5.7
2016.04.05 16:09:44 0: Server started with 77 defined entities (fhem.pl:11178/2016-04-03 perl:5.020002 os:linux user:fhem pid:5156)
2016.04.05 16:09:45 3: Opening 1W_WIFI device 192.168.5.51:9000
2016.04.05 16:09:45 3: Opening 1W_WIFI device 192.168.5.51:9000
2016.04.05 16:09:46 3: Opening 1W_WIFI device 192.168.5.51:9000
2016.04.05 16:09:46 3: Opening 1W_WIFI device 192.168.5.51:9000
2016.04.05 16:09:46 3: Opening 1W_WIFI device 192.168.5.51:9000
2016.04.05 16:09:46 3: Opening 1W_WIFI device 192.168.5.51:9000
2016.04.05 16:09:46 3: Opening 1W_WIFI device 192.168.5.51:9000
2016.04.05 16:09:46 3: Opening 1W_WIFI device 192.168.5.51:9000
2016.04.05 16:09:46 3: Opening 1W_WIFI device 192.168.5.51:9000
2016.04.05 16:09:46 3: Opening 1W_WIFI device 192.168.5.51:9000
2016.04.05 16:09:46 3: Opening 1W_WIFI device 192.168.5.51:9000
2016.04.05 16:09:46 3: Opening 1W_WIFI device 192.168.5.51:9000
2016.04.05 16:09:46 3: Opening 1W_WIFI device 192.168.5.51:9000
2016.04.05 16:09:46 3: Opening 1W_WIFI device 192.168.5.51:9000
2016.04.05 16:09:46 3: Opening 1W_WIFI device 192.168.5.51:9000
2016.04.05 16:09:48 3: Opening 1W_WIFI device 192.168.5.51:9000
2016.04.05 16:09:48 3: Opening 1W_WIFI device 192.168.5.51:9000
2016.04.05 16:09:48 3: Opening 1W_WIFI device 192.168.5.51:9000
2016.04.05 16:09:49 3: Opening 1W_WIFI device 192.168.5.51:9000
....
....
2016.04.05 16:10:37 3: Opening 1W_WIFI device 192.168.5.51:9000
2016.04.05 16:10:42 3: Opening 1W_WIFI device 192.168.5.51:9000
2016.04.05 16:10:45 3: Can't connect to 192.168.5.51:9000: No route to host
bis zu 40 events / sekunde...
Als device hängt bisher nur ein einziger 18x20 mit OWTERM dran
Der schreibt das log so schnell voll, das binnen eines tages das filesystem voll ist.....
l.g. erwin
Titel: Antw:OWX_ASYNC race condition?
Beitrag von: Prof. Dr. Peter Henning am 08 April 2016, 10:57:18
Ja, und ? Was sollte denn passieren, wenn das Device "mal nicht erreichbar" ist ?

LG

pah
Titel: Antw:OWX_ASYNC race condition?
Beitrag von: erwin am 08 April 2016, 11:12:59
ZitatJa, und ?
Ich denke mal, es ist nicht unbedingt notwendig, ein nicht erreichbares device 40*/sekunde zu versuchen....
...und damit FHEM unnötig in die Knie zu zwingen....
Bei einem über WLAN verbundenen Device ist schon mal ab und an zu rechnen, dasss es nicht verfügbar ist, oder?
Wollte evtl. Norbert bitten, sich das anzusehen, nicht mehr!
Ich entschuldige mich auch dafür, dass ich diesen post ursprünglich in PAH's OWN New Generation thread gepostet habe, war mein Fehler!
l.g. erwin

Titel: Antw:OWX_ASYNC race condition?
Beitrag von: Prof. Dr. Peter Henning am 08 April 2016, 11:27:50
Die Frage war ganz ernst gemeint - was sollte stattdessen passieren ? Denn die Überarbeitung der Device-Routinen gehört zum nächsten Schritt für OWX.

LG

pah
Titel: Antw:OWX_ASYNC race condition?
Beitrag von: erwin am 08 April 2016, 12:19:29
Ok, ich hab verstanden, da kommt was..., Danke!

Konkrete Antwort auf die ernst gemeinte Frage:
Falls ein Device nach x Versuchen nicht erreichbar ist, sollte folgendes passieren:
1) Ein Log Eintrag mit erhöhtem Level - das passiert hier:
2016.04.05 16:10:45 3: Can't connect to 192.168.5.51:9000: No route to host
2) danach sollte es eine Pause (meiner Meinung nach im Minutenbereich) geben, bis zum nächsten Versuch.
    momentan passieren hier weiterhin bis zu 40 attempts/sekunde- ich vermute die Anzahl ist nur abhängig von der performance des hosts!
l.g. erwin
Titel: Antw:OWX_ASYNC race condition?
Beitrag von: Prof. Dr. Peter Henning am 08 April 2016, 14:05:51
Nicht ganz  - die Backendroutinen für OWX_ASYNC sind ganz andere.

LG

pah