NEWS
History 2.0.0 verfügbar - eine Zusammenfassung
-
@thomas-braun ich denke das ist hier nicht so relevant.
In meinen Augen kann der Fehler nur auf zwei Arten passieren (in Beiden Fällen erklärt das nicht das ein Downgrade es fixt):
- entweder ist es ne SD Karte oder generell im FS ist ein Bit gekippt - Downgrade geht wieder spricht dagegen
- Es ist ein Timeing issue was wir übersehen haben beim handling vopn Multicommands im Redis-Simulator :-)
@apollon77 sagte in History 2.0.0 verfügbar - eine Zusammenfassung:
ich denke das ist hier nicht so relevant.
Möglich.
@Frank579
Das System in Gänze auf einem konsistenten Stand halten.
Insbesondere den ws/web/socketio-Kram. -
@frank579
Welcher js-controller ist das?kannst Du es versuchen bitte nochmals zu reproduzieren? Wir kennen diesen Fehler aus Logs vom js-controller konnten Ihn aber noch nie nachvollziehen und auch in verbindung mit History mir bisher unbekannt. Falls es wieder passsiert bitte setze mal das Loglevel des Hosts (/opt/iobroker/iobroker-data/iobroker.json) auf "silly" und poste mal das log - aber am besten in nem anderen Thread weil für hier an sich off topic
EDIT Und bitte zeige mal was in
/opt/iobroker/node_modules/@iobroker/db-objects-jsonl/lib/objects/objectsInMemServerRedis.js in Zeile 734 steht
UND was in /opt/iobroker/node_modules/@iobroker/db-base/lib/redisHandler.js Zeile 326 steht
@apollon77 sagte in History 2.0.0 verfügbar - eine Zusammenfassung:
EDIT Und bitte zeige mal was in
/opt/iobroker/node_modules/@iobroker/db-objects-jsonl/lib/objects/objectsInMemServerRedis.js in Zeile 734 steht
UND was in /opt/iobroker/node_modules/@iobroker/db-base/lib/redisHandler.js Zeile 326 stehwie kome ich da am besten dran im nano hab ich keine Zeilennummern :rolling_on_the_floor_laughing:
-
@apollon77 sagte in History 2.0.0 verfügbar - eine Zusammenfassung:
EDIT Und bitte zeige mal was in
/opt/iobroker/node_modules/@iobroker/db-objects-jsonl/lib/objects/objectsInMemServerRedis.js in Zeile 734 steht
UND was in /opt/iobroker/node_modules/@iobroker/db-base/lib/redisHandler.js Zeile 326 stehwie kome ich da am besten dran im nano hab ich keine Zeilennummern :rolling_on_the_floor_laughing:
@frank579 sagte in History 2.0.0 verfügbar - eine Zusammenfassung:
wie kome ich da am besten dran im nano hab ich keine Zeilennummern
Ctrl-C schaltet die ein.
Oder mit Option -l oder -c aufrufen.
-
@apollon77 sagte in History 2.0.0 verfügbar - eine Zusammenfassung:
ich denke das ist hier nicht so relevant.
Möglich.
@Frank579
Das System in Gänze auf einem konsistenten Stand halten.
Insbesondere den ws/web/socketio-Kram.@thomas-braun sagte in History 2.0.0 verfügbar - eine Zusammenfassung:
Insbesondere den ws/web/socketio-Kram.
Da hatte ich mehrfach probleme mit den Betas ... wollte ich erst mal auf stable lassen :) wenn das hier naturlich hilft versuche ich das ... bin eigendlich auf Stable unterwegs....
-
@thomas-braun sagte in History 2.0.0 verfügbar - eine Zusammenfassung:
Insbesondere den ws/web/socketio-Kram.
Da hatte ich mehrfach probleme mit den Betas ... wollte ich erst mal auf stable lassen :) wenn das hier naturlich hilft versuche ich das ... bin eigendlich auf Stable unterwegs....
So'n Mix aus Stable und Beta ist natürlich schwierig.
Dann lass aber auch das Stable-Repo aktiv. Jetzt schwirrst du da im Beta-Zweig herum.
-
@frank579
Welcher js-controller ist das?kannst Du es versuchen bitte nochmals zu reproduzieren? Wir kennen diesen Fehler aus Logs vom js-controller konnten Ihn aber noch nie nachvollziehen und auch in verbindung mit History mir bisher unbekannt. Falls es wieder passsiert bitte setze mal das Loglevel des Hosts (/opt/iobroker/iobroker-data/iobroker.json) auf "silly" und poste mal das log - aber am besten in nem anderen Thread weil für hier an sich off topic
EDIT Und bitte zeige mal was in
/opt/iobroker/node_modules/@iobroker/db-objects-jsonl/lib/objects/objectsInMemServerRedis.js in Zeile 734 steht
UND was in /opt/iobroker/node_modules/@iobroker/db-base/lib/redisHandler.js Zeile 326 steht
@apollon77 sagte in History 2.0.0 verfügbar - eine Zusammenfassung:
/opt/iobroker/node_modules/@iobroker/db-objects-jsonl/lib/objects/objectsInMemServerRedis.js in Zeile 734 steht
return void handler.sendInteger(responseId, 1);@apollon77 sagte in History 2.0.0 verfügbar - eine Zusammenfassung:
UND was in /opt/iobroker/node_modules/@iobroker/db-base/lib/redisHandler.js Zeile 326 steht
this._handleMultiResponse(responseId, i, Resp.encodeInteger(num)); -
So'n Mix aus Stable und Beta ist natürlich schwierig.
Dann lass aber auch das Stable-Repo aktiv. Jetzt schwirrst du da im Beta-Zweig herum.
@thomas-braun Ja passe ja auch auf was ich update ... schaue zwichendurch mal was es so neues zum testen gibt ...
und einige adapter muss ich derzeit auf beta laufen lassen daher ist zur zeit umgestellt ;) -
@apollon77 sagte in History 2.0.0 verfügbar - eine Zusammenfassung:
/opt/iobroker/node_modules/@iobroker/db-objects-jsonl/lib/objects/objectsInMemServerRedis.js in Zeile 734 steht
return void handler.sendInteger(responseId, 1);@apollon77 sagte in History 2.0.0 verfügbar - eine Zusammenfassung:
UND was in /opt/iobroker/node_modules/@iobroker/db-base/lib/redisHandler.js Zeile 326 steht
this._handleMultiResponse(responseId, i, Resp.encodeInteger(num)); -
@frank579 Ok, das sieht korrekt aus. Kannst du es reproduzieren wenn du nochmal hoch gehst? Bitte ggf auch mal iobroker stoppen und neu starten
@apollon77 ja versuche ich Starte die VM dann mal komplett neu nach dem update ...
-
@thomas-braun Ja passe ja auch auf was ich update ... schaue zwichendurch mal was es so neues zum testen gibt ...
und einige adapter muss ich derzeit auf beta laufen lassen daher ist zur zeit umgestellt ;)@frank579 Tip am Rande: Einzelne Beta-Versionen zieht man über npm rein:

Dann kann man grundsätzlich das stable-Repo aktiv halten.
-
@frank579 Tip am Rande: Einzelne Beta-Versionen zieht man über npm rein:

Dann kann man grundsätzlich das stable-Repo aktiv halten.
@thomas-braun Ja weiß ich, Danke :) dann sehe ich aber a nicht wenn's was neues gibt :joy: :joy:
-
@frank579 Ok, das sieht korrekt aus. Kannst du es reproduzieren wenn du nochmal hoch gehst? Bitte ggf auch mal iobroker stoppen und neu starten
@apollon77 Neustart ist durch jetzt mal abwarten ....
-
@frank579 Ok, das sieht korrekt aus. Kannst du es reproduzieren wenn du nochmal hoch gehst? Bitte ggf auch mal iobroker stoppen und neu starten
@apollon77
Sieht jetzt gut aus, nach dem Update nach ein paar minuten der selbe Fehler, seit dem Neustart der VM ist (bis jetzt) Ruhe
werde weiter beobachten.
@apollon77 @Thomas-Braun Vielen Dank schon mal für eure Hilfe :+1: :+1: -
@apollon77
Sieht jetzt gut aus, nach dem Update nach ein paar minuten der selbe Fehler, seit dem Neustart der VM ist (bis jetzt) Ruhe
werde weiter beobachten.
@apollon77 @Thomas-Braun Vielen Dank schon mal für eure Hilfe :+1: :+1:@apollon77 Schade 😥
2022-07-04 20:30:02.018 - info: shuttercontrol.0 (1612) Sunprotect #422 Set ID: Dachfenster Flur value: 0% 2022-07-04 21:05:26.932 - error: host.IOBroker uncaught exception: null must be RESP Buffer value 2022-07-04 21:05:26.933 - error: host.IOBroker TypeError: null must be RESP Buffer value at Function.encodeArray (/opt/iobroker/node_modules/respjs/index.js:62:45) at RedisHandler._sendExecResponse (/opt/iobroker/node_modules/@iobroker/db-base/lib/redisHandler.js:452:62) at RedisHandler._handleMultiResponse (/opt/iobroker/node_modules/@iobroker/db-base/lib/redisHandler.js:472:18) at RedisHandler.sendInteger (/opt/iobroker/node_modules/@iobroker/db-base/lib/redisHandler.js:326:22) at RedisHandler. (/opt/iobroker/node_modules/@iobroker/db-objects-jsonl/lib/objects/objectsInMemServerRedis.js:734:33) at RedisHandler.emit (node:events:527:28) at RedisHandler.emit (node:domain:475:12) at Immediate. (/opt/iobroker/node_modules/@iobroker/db-base/lib/redisHandler.js:145:37) at processImmediate (node:internal/timers:466:21) 2022-07-04 21:05:26.946 - info: javascript.0 (460) Got terminate signal TERMINATE_YOURSELFGehe dann mal wieder zurück...
-
@apollon77 Schade 😥
2022-07-04 20:30:02.018 - info: shuttercontrol.0 (1612) Sunprotect #422 Set ID: Dachfenster Flur value: 0% 2022-07-04 21:05:26.932 - error: host.IOBroker uncaught exception: null must be RESP Buffer value 2022-07-04 21:05:26.933 - error: host.IOBroker TypeError: null must be RESP Buffer value at Function.encodeArray (/opt/iobroker/node_modules/respjs/index.js:62:45) at RedisHandler._sendExecResponse (/opt/iobroker/node_modules/@iobroker/db-base/lib/redisHandler.js:452:62) at RedisHandler._handleMultiResponse (/opt/iobroker/node_modules/@iobroker/db-base/lib/redisHandler.js:472:18) at RedisHandler.sendInteger (/opt/iobroker/node_modules/@iobroker/db-base/lib/redisHandler.js:326:22) at RedisHandler. (/opt/iobroker/node_modules/@iobroker/db-objects-jsonl/lib/objects/objectsInMemServerRedis.js:734:33) at RedisHandler.emit (node:events:527:28) at RedisHandler.emit (node:domain:475:12) at Immediate. (/opt/iobroker/node_modules/@iobroker/db-base/lib/redisHandler.js:145:37) at processImmediate (node:internal/timers:466:21) 2022-07-04 21:05:26.946 - info: javascript.0 (460) Got terminate signal TERMINATE_YOURSELFGehe dann mal wieder zurück...
-
@apollon77
Seit gesten aben kein Absturz mehr ..*/ _handleMultiResponse(responseId, index, buf) { this.activeMultiCalls[index].responseMap.set(responseId, buf); this.activeMultiCalls[index].responseCount++; if ( this.activeMultiCalls[index].execCalled && this.activeMultiCalls[index].responseCount === this.activeMultiCalls[index].responseIds.length ) { const multiRespObj = this.activeMultiCalls.splice(index, 1)[0]; this._sendExecResponse(multiRespObj); } } }ich würde sagen Ja ...
wenn du meist das wird hier zu sehr OT kannst du das gene abspalten , hatte es auf den History geschoben da es Ja mit dem Update "irgendwie" zusammenhängt
-
@apollon77
Seit gesten aben kein Absturz mehr ..*/ _handleMultiResponse(responseId, index, buf) { this.activeMultiCalls[index].responseMap.set(responseId, buf); this.activeMultiCalls[index].responseCount++; if ( this.activeMultiCalls[index].execCalled && this.activeMultiCalls[index].responseCount === this.activeMultiCalls[index].responseIds.length ) { const multiRespObj = this.activeMultiCalls.splice(index, 1)[0]; this._sendExecResponse(multiRespObj); } } }ich würde sagen Ja ...
wenn du meist das wird hier zu sehr OT kannst du das gene abspalten , hatte es auf den History geschoben da es Ja mit dem Update "irgendwie" zusammenhängt
@frank579 ALso kann mit dem Adapter nix zu tun haben ... aber ok ... das es nicht mehr auftritt seit gestern ist auch unverständlich ... Einzige Idee wäre ganz erweitertes log zu aktivieren, aber das ist dann "einiges" nur damit man im Falle des Crahes die letzte Minute oder so ansehen kann :-)
-
@frank579 ALso kann mit dem Adapter nix zu tun haben ... aber ok ... das es nicht mehr auftritt seit gestern ist auch unverständlich ... Einzige Idee wäre ganz erweitertes log zu aktivieren, aber das ist dann "einiges" nur damit man im Falle des Crahes die letzte Minute oder so ansehen kann :-)
@apollon77 können wir gerne machen, dann musst du mir aber sagen was ich tun muss/ Du kannst dich aber auch gerne mal Abends per AnyDesk oder so auf meinen rechner schalten, würde ja fast wetten wenn ich den Adapter Update kommt der Fehler wieder.
-
@frank579 ALso kann mit dem Adapter nix zu tun haben ... aber ok ... das es nicht mehr auftritt seit gestern ist auch unverständlich ... Einzige Idee wäre ganz erweitertes log zu aktivieren, aber das ist dann "einiges" nur damit man im Falle des Crahes die letzte Minute oder so ansehen kann :-)
@apollon77 soll ich den Host mal auf silly stellen wie du oben sagtest (muss ich danach iobroker neu starten ?) und dann das Update nochmal starten ?
-
@apollon77 soll ich den Host mal auf silly stellen wie du oben sagtest (muss ich danach iobroker neu starten ?) und dann das Update nochmal starten ?
@frank579 Ok, lass uns mal was anderes versuchen - bei dir passiert es ja immer nach ein paar Stunden irgendwann ... richtig?
Stoppe mal iobroker und dann ändere bitte in /opt/iobroker/node_modules/@iobroker/db-base/lib/redisHandler.js an zwei stellen was
1.) Einmal bei Zeile 33 (https://github.com/ioBroker/ioBroker.js-controller/blob/ea1a72ac2d74317ad16234f7aeac90632374614c/packages/db-base/lib/redisHandler.js#L33) eine neue Zeile einfügen:
this.responseId = 0;2.) Die zwei zeilen hier löschen und ersetzen (also an gleiche Stelle) das schreiben:
if (this.responseId === Number.MAX_VALUE) this.responseId = 0; const responseId = this.responseId++;Und dann schau mal ob es nochmal passiert.
Danke!