ioBroker / ioBroker.node-red

Instantiate the server with node-red
Apache License 2.0
52 stars 27 forks source link

v5.20 - Error loading context store #455

Closed Bernd9000 closed 3 months ago

Bernd9000 commented 3 months ago

node-red V5.20

Nach Stromausfall erhalte ich folgende Fehlermeldung und node-red startet nicht mehr:

Was ist zu tun ?

iob Log: Node-RED: 11 Mar 12:15:45 - [error] Error: Error loading context store: Error: Invalid JSON in context file 'C:\Software\iobroker\iobroker-data\node-red\context\58249c2.4f53464old\27534191197f4dc9.json' at C:\Software\iobroker\node_modules\@node-red\runtime\lib\nodes\context\index.js:180:15

Node-RED: 11 Mar 12:15:45 - [error] Failed to start server:

klein0r commented 3 months ago

Zeig doch mal den Inhalt der Datei (eventuelle Passwörter / sensible Daten bitte nicht teilen)

Bernd9000 commented 3 months ago

Habe es erstmal zum laufen gebracht mit node-red v5.10....... Glück gehabt :-)

Der Inhalt aller Dateien ist leer bzw. es sind nur paar Leerzeichen vorhanden. Vermutlich durch den Stromausfall. Es müßte dann aber eine Möglichkeit geben das zu umgehen ? Bzw. das node-red trotzdem startet ohne gespeicherte context Daten ?

Bernd9000 commented 3 months ago

P.S.: Falls jemand über den Log Eintrag stolpert: Das "old" im Namen 58249c2.4f53464old ist von mir, ich wollte testen ob node-red dann startet wenn der Ordner nicht gefunden wird.

klein0r commented 3 months ago

Es müßte dann aber eine Möglichkeit geben das zu umgehen ?

Bestimmt, ist ein Thema von Node-RED nur gültiges JSON da rein zu schreiben oder zumindest fehlertolerant zu parsen. Dazu gibt es hier auch schon einen Issue: https://github.com/node-red/node-red/issues/2723

Hat mit dem Adapter hier ja erstmal nix zu tun.

Bernd9000 commented 3 months ago

Ich ging aber davon aus, weil das Thema gerade in der v5.20 aktuell war ?

Unbenannt

klein0r commented 3 months ago

Na da wurde der persistent storage ja nur aktiviert - war ein Wunsch hier in den Issues. Welches Vorgehen wünschst Du Dir jetzt?

Bernd9000 commented 3 months ago

Es wäre nicht schlecht bei einem Fehler das laden der context Daten zu verhindern. Also eine Option in den Adapter-Einstellung in node-red.

klein0r commented 3 months ago

Es wäre nicht schlecht bei einem Fehler das laden der context Daten zu verhindern.

Ja, das muss Node-RED anpassen. Der Adapter startet ja nur den Node-RED Prozess.

Bernd9000 commented 3 months ago

Okay, dann mach ich dicht

Bernd9000 commented 3 months ago

Für alle die das selbe Problem haben. Adapter node-red stopen Im der Datei "node_modules\iobroker.node-red\settings.js" folgende Zeilen ausklammern. Und node-red wieder starten Kann es selbst aber aktuell nicht mehr testen.

contextStorage: { default: { module: "localfilesystem", config: { dir: "'%%contextDir%%'" } } },