Floorplan-Probleme im Zusammenhang mit 10_CUL_HM

Begonnen von rx, 06 März 2019, 12:56:44

Vorheriges Thema - Nächstes Thema

rx

Guten Abend, ich betreibe eine fhem-Installation mit ca. 100 Homematic-Devices. Als Basis für den Betrieb hatte ich mehrere Monate lang eine fhem-Version aus September 2018- die problemlos lief. Insbesondere der Aufruf der Floorplans war sehr flüssig obwohl sehr viele Devices dargestellt werden.

Da ich jetzt anfange, Aqara-Devices einzubinden wollte ich auf eine aktuelle fhem-Version aktualisieren und habe das auch getan.

Leider hat sich nach dem Update ein Problem ergeben: Der Aufruf der Floorplans führt zu einem Hänger bei fhem und nach ca. 5-8 Sekunden erscheint erst der Floorplan- vorher: 1 bis 2 Sekunden. Ich habe versucht das Problem einzugrenzen, bin aber jetzt leider an meiner Grenze angelangt. Im Logfile (auch bei verbose 5) kommt keine gescheite Meldung. Man sieht den Aufruf von "Floorplan" und dann gibt es einen Hänger bevor es weitergeht. Debugging im Browser und via tcpdump haben ergeben, dass es innerhalb von fhem hängt.

Ich habe daraufhin Schritt für Schritt versucht herauszufinden, welcher Teil von fhem die Probleme bei mir bereitet. Letztendlich bin ich reproduzierbar bei dem Modul 10_CUL_HM gelandet. Und zwar tritt das oben beschriebene Verhalten mit der Version 18042 von 10_CUL_HM auf. Die vorherige Version macht bei mir keine Probleme.

Zur Erläuterung hinsichtlich der Versionen:
Vorher (normale Floorplan-Geschwindigkeit) hatte ich diese hier:
https://svn.fhem.de/trac/log/trunk/fhem/FHEM/10_CUL_HM.pm?rev=16522

Ich habe mich bei meinen Tests allerdings bis zu dieser funktionierenden Version vorgearbeitet:
https://svn.fhem.de/trac/log/trunk/fhem/FHEM/10_CUL_HM.pm?rev=17837

Mit 18042 tritt dann das Problem mit dem Floorplan auf:
https://svn.fhem.de/trac/log/trunk/fhem/FHEM/10_CUL_HM.pm?rev=18042

Nun die Frage: Kann mir jemand sagen was mit der Version geändert wurde, so dass es zu dem beschriebenen Verhalten kommt? Hat noch jemand diese Beobachtungen?

Viele Grüße
RX
Server started with 1333 defined entities (fhem.pl:27302/2023-03-05 perl:5.028001 os:linux user:root pid:29591)

martinp876

Es handelt sich also nicht um einen Funktionsfehler sondern eine (unangenehme) verzögerung - korrekt?
Die lange Verzögerung habe ich noch nicht bemerkt. Allerdings wird für das peerSmart eine Lister der möglichen peers erstellt. Die Liste der Optionen eines Kommandos wird in FHEM bei jeden Aufbau einer Seite angefragt. Nun kann es sein, dass bei deinen 100 Devices die Liste recht lang ist und somit auch länger im Aufbau dauert. Die Masse der Berechnungen hatte ich schon vorab getätigt um die kontinuierliche Performance zu verbessern.

Probiere einmal ein
set <device> ?
Das Device sollte ein Licht oder Lichtschalter sein. Das Kommando "peerSmart" sollte zu sehen sein.
Wie lange dauert dies? Wie viele deiner Devices sind auf einem Floorplan? Kann die Summe aller das Problem sein?

rx

Ja, richtig. Es handelt sich um eine unangenehme Verzögerung- funktionieren tut es ja.

Gewundert hat mich nur, dass es von einer Version zur anderen auftritt. D.h. aktuell mit einer älteren Version ohne Verzögerung und ab 18042 mit Verzögerung.

Das Kommando "peerSmart" taucht bei mir nicht auf- ist das auch an eine bestimmte Version gekoppelt? Auf dem Erdgeschoss-Floorplan sind 200 Einträge.

Danke für deine Mühen,

Grüße
Server started with 1333 defined entities (fhem.pl:27302/2023-03-05 perl:5.028001 os:linux user:root pid:29591)

martinp876

ich vermesse gerade. peerSmart ist schnell, wie erwartet.
Nutzt du templates? Auch hier ist ein Support eingebaut. Das werde ich noch optimieren...

Im Frontent konnte ich sehen, dass die Abfrage der möglichen Kommandos 3-mal für ein device beim Aufbau der Webseite passiert. das multipliziert den Aufwand natürlich.
Ich suche noch etwas.

rx

Danke dir! Wäre schon interessant warum es von einer zur anderen Version so viel langsamer geworden ist. Müssten andere nicht das gleiche Problem haben? Der Aufruf aller Devices über ?room=all ist auch erheblich langsamer geworden- vielleicht hilft das ja bei der Suche.

Templates sagen mir so erstmal nichts- wahrscheinlich habe ich sie nicht im Einsatz.

Viele Grüße
Server started with 1333 defined entities (fhem.pl:27302/2023-03-05 perl:5.028001 os:linux user:root pid:29591)