Welches Modul schreibt Dateien mit diesem Inhalt?

Begonnen von betateilchen, 23 Oktober 2021, 19:49:11

Vorheriges Thema - Nächstes Thema

rudolfkoenig

Ich glaube da ist configDB der Verursacher, weil manche Readings laenger als 64K sind.

betateilchen

Zitat von: rudolfkoenig am 24 Oktober 2021, 10:25:47
Ich glaube da ist configDB der Verursacher, weil manche Readings laenger als 64K sind.

Das glaube ich jetzt auch  :)

Readings, die länger als 64k sind, werden von configDB automatisch als Datei weggeschrieben und entsprechend referenziert.

Da muss ich mir wohl Gedanken über einen sinnvollen Lösch-Algorithmus machen. Auf die Idee, dass jemand alle 15 Minuten ein statefile erzeugt, bin ich bei der Implementierung des Auslagerns nicht gekommen.

Unabhängig davon würde mich trotzdem interessieren, aus welchem device das reading stammt.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

eiten

Zitat von: betateilchen am 24 Oktober 2021, 11:09:50
Unabhängig davon würde mich trotzdem interessieren, aus welchem device das reading stammt.

Wie kann ich das herauskriegen?

eiten

Ich hätte da eins im Angebot: das retain vom MQTT2_SERVER hat bei mir 75k

betateilchen

#19
Kannst Du bitte mit der configDB.pm testen, die ich gerade in SVN eingecheckt habe?

Wenn Du nach der Installation der Datei einen Neustart machst und danach ein "Save config" ausführst, sollten danach die alten Dateien verschwunden sein.
Das erste "Save config" kann bei Deinen über 20.000 Dateien ein bisschen dauern, also nicht die Geduld verlieren.

Der Mechanismus zum Löschen solcher Dateien ist an das Speichern der Konfiguration gebunden. Bevor das neue statefile in die Datenbank geschrieben wird, werden alle vorher verhandenen Auslagerungsdateien gelöscht.

(Das Schreiben des statefile alle 15 Minuten halte ich - nebenbei gesagt - für absolut sinnfrei.)
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

eiten

Naja, die alten Einträge habe ich mit einem SQL-Befehl gelöscht. Hat EWIG gedauert, ich dachte schon MariaDB sei abgestürzt   :).
Neu funktioniert super, keine Dateien mehr!

Das häufige SaveState habe ich gemacht, weil ich gewisse Schalter habe, die extrem selten geschaltet werden (Sommer/Winterbetrieb, Auto/Manuell der Aussenlichtsteuerung), welche aber dazwischen keine Events erzeugen. Habe das aber in der Zwischenzeit über dummys gelöst und die Familie angewiesen, den Server zwecks Bodenreinigung nicht mehr auszustecken  ;)