MapDB speichert keine Dateien und ist funktionslos

Einrichtung der openHAB Umgebung und allgemeine Konfigurationsthemen.

Moderatoren: seppy, udo1toni

joernsch
Beiträge: 16
Registriert: 13. Jan 2021 10:12
Answers: 0

Re: MapDB speichert keine Dateien und ist funktionslos

Beitrag von joernsch »

Mit

Code: Alles auswählen

ls -al /var/lib/openhab2/persistence/mapdb
Ergebnis

Code: Alles auswählen

total 8
drwxrwxrwx 2 openhab openhab 4096 Jan 14 08:11 .
drwxrwxrwx 5 openhab openhab 4096 Oct 13 09:42 ..

Benutzeravatar
sihui
Beiträge: 1827
Registriert: 11. Apr 2018 19:03
Answers: 21

Re: MapDB speichert keine Dateien und ist funktionslos

Beitrag von sihui »

joernsch hat geschrieben: 14. Jan 2021 08:25 Ergebnis
Das sieht doch gut aus. Daran liegt es also auch nicht.

Noch mal im Schnellverfahren die notwendigen Schritte für das Einrichten eines Persistence Services:

1) den Persistence Service installieren, in deinem Falle MapDB
2) die Datei mapdb.persist im korrekten Ordner erstellen und mit entsprechender Konfiguration füllen. HIer ist es wichtig einen korrekten Editor zu nehmen und diesen auf UTF-8 Kodierung einzustellen damit nicht unnötige oder versteckte Zeichen die Funktion verhindern: entweder auf OS Ebene mit z.B. nano oder mit Visual Studio Code oder auch mit Notepad++.
3) ggf. openHAB neu starten.

Mehr ist eigentlich nicht nötig ...
openHAB3 mit Zwave, Alexa, ESPEasy, MQTT, Logitech Harmony, Philips HUE und ZigBee Hardware auf Proxmox VE.

joernsch
Beiträge: 16
Registriert: 13. Jan 2021 10:12
Answers: 0

Re: MapDB speichert keine Dateien und ist funktionslos

Beitrag von joernsch »

Ich habe nun folgendes gemacht:
- MapDB deinstalliert
- reboot
- Verzeichnisse geleert
- reboot
- MapDB neu installiert
- Persistence Default auf mapdb gestellt
- reboot

Und siehe da, auf einmal tauchen diese Dateien im Verzeichnis /var/lib/openhab2/persistence/mapdb auf
sihui hat geschrieben: 14. Jan 2021 08:00 namentlich storage.mapdb, storage.mapdb.p, storage.mapdb.t
Nun habe ich die mapdb.persist erstellt

Code: Alles auswählen

Strategies {
    default = everyChange
}

Itmes {
    * : everyUpdate, everyChange, restoreOnStartup
}
- reboot

Jetzt habe ich diverse Switches, die den Zustand NULL hatten verändert, auch ein Item Number ist dabei, welches hochzählt bei einem Schalter.
Nach dem Befehl

Code: Alles auswählen

systemctl restart openhab2
stehen alle Werte wieder auf NULL.

Benutzeravatar
sihui
Beiträge: 1827
Registriert: 11. Apr 2018 19:03
Answers: 21

Re: MapDB speichert keine Dateien und ist funktionslos

Beitrag von sihui »

joernsch hat geschrieben: 14. Jan 2021 13:27

Code: Alles auswählen

Strategies {
    default = everyChange
}

Itmes {
    * : everyUpdate, everyChange, restoreOnStartup
Itmes muss Items heissen.
openHAB3 mit Zwave, Alexa, ESPEasy, MQTT, Logitech Harmony, Philips HUE und ZigBee Hardware auf Proxmox VE.

joernsch
Beiträge: 16
Registriert: 13. Jan 2021 10:12
Answers: 0

Re: MapDB speichert keine Dateien und ist funktionslos

Beitrag von joernsch »

Habe ich geändert, reboot, leider kein Effekt.

Benutzeravatar
sihui
Beiträge: 1827
Registriert: 11. Apr 2018 19:03
Answers: 21

Re: MapDB speichert keine Dateien und ist funktionslos

Beitrag von sihui »

joernsch hat geschrieben: 14. Jan 2021 14:04 Habe ich geändert, reboot, leider kein Effekt.
Meine allerletzte Idee: persistiere doch einmal nur zwei oder drei Items, möglichst keine virtuellen, sondern mit einem Channel verbundene Items, dann deren Status ändern und schauen was passiert.
Mit einem Sternchen alle Items zu persistieren, obwohl es funktionieren müsste, ist ja gründsätzlich nicht die beste Idee: viele Sensoren, und auch Aktoren, senden ja ihren Status regelmäßig an openHAB. Diesen aktuellen Status überschreibst du ja mit deinem restoreOnStartup.
openHAB3 mit Zwave, Alexa, ESPEasy, MQTT, Logitech Harmony, Philips HUE und ZigBee Hardware auf Proxmox VE.

joernsch
Beiträge: 16
Registriert: 13. Jan 2021 10:12
Answers: 0

Re: MapDB speichert keine Dateien und ist funktionslos

Beitrag von joernsch »

Habe also zweimal jeweils einen Switch, der mit einem Channel belegt ist einzeln persistiert.
Der Wiederherstellung der Zustands des Ersten (ein Shelly1) funktioniert auch ohne Persistence, also mit leerer mapdb.persist, der zweite (ein Tasmota) zeigt nach restart wieder den Status NULL, obwohl der aktuelle und letzte Zustand ON war.

EDIT: Sollte ich es mal mit einer anderen Persistence ausprobieren? Wenn ja, mit welcher?

Benutzeravatar
sihui
Beiträge: 1827
Registriert: 11. Apr 2018 19:03
Answers: 21

Re: MapDB speichert keine Dateien und ist funktionslos

Beitrag von sihui »

joernsch hat geschrieben: 14. Jan 2021 16:33 EDIT: Sollte ich es mal mit einer anderen Persistence ausprobieren? Wenn ja, mit welcher?
rrd4j ist genauso einfach und schnell eingerichtet wie mapdb. Allersings ist dort zwingend everyMinute zu nutzen!
Wenn es damit auch nicht geht bitte ein neues Thema aufmachen (ich werde mich dann dort zurückhalten) :D

Edit: und nimm mal das everyUpdate raus, nicht das irgendwelche Regeln dir beim runterfahren triggern und dir einen ganz anderen Status suggerieren als du eigentlich gedacht hast.
openHAB3 mit Zwave, Alexa, ESPEasy, MQTT, Logitech Harmony, Philips HUE und ZigBee Hardware auf Proxmox VE.

joernsch
Beiträge: 16
Registriert: 13. Jan 2021 10:12
Answers: 0

Re: MapDB speichert keine Dateien und ist funktionslos

Beitrag von joernsch »

rrd4j ist genauso einfach und schnell eingerichtet
Mit Erfolg eingerichtet!

Nur um den Unterschied zu verstehen... RRD4J speichert nicht nur den letzten Zustand sondern auch alle zuvor?! Das heißt die Speicherdatei wird immer größer? Muss man das noch irgendwie limitieren um das System nicht zu zerstören auf Dauer?
nimm mal das everyUpdate raus
Hat nichts verändert!

Benutzeravatar
sihui
Beiträge: 1827
Registriert: 11. Apr 2018 19:03
Answers: 21

Re: MapDB speichert keine Dateien und ist funktionslos

Beitrag von sihui »

joernsch hat geschrieben: 15. Jan 2021 09:04 Das heißt die Speicherdatei wird immer größer?
Doku?

https://www.openhab.org/addons/persistence/rrd4j/
In contrast to a "normal" database such as db4o, a round-robin database does not grow in size - it has a fixed allocated size.
openHAB3 mit Zwave, Alexa, ESPEasy, MQTT, Logitech Harmony, Philips HUE und ZigBee Hardware auf Proxmox VE.

Antworten