NEWS
Backup seit Update auf NodeJS 14 nicht mehr möglich
-
Hallo,
seitdem ich (erfolgreich nach Anleitung) auf NodeJS 14 upgedatet habe, funktioniert leider das Backup nicht mehr. Weder über die Oberfläche BackItUp, noch über's Terminal:
pi@raspberrypi:~ $ iobroker backup host.raspberrypi 13448 states saved host.raspberrypi 16894 objects saved <--- Last few GCs ---> [1217:0x3cdcd10] 22997 ms: Mark-sweep (reduce) 231.0 (232.0) -> 231.0 (233.0) MB, 304.7 / 0.1 ms (average mu = 0.467, current mu = 0.085) allocation failure scavenge might not succeed [1217:0x3cdcd10] 23358 ms: Mark-sweep (reduce) 231.5 (234.0) -> 231.5 (234.5) MB, 324.3 / 0.0 ms (average mu = 0.325, current mu = 0.102) allocation failure scavenge might not succeed <--- JS stacktrace ---> FATAL ERROR: MarkCompactCollector: young object promotion failed Allocation failed - JavaScript heap out of memory /usr/bin/iobroker: Zeile 8: 1216 Abgebrochen sudo -H -u iobroker node /opt/iobroker/node_modules/iobroker.js-controller/iobroker.js "$@"
auch
iobroker fix
ändert leider nichts daran.Habt ihr eine Idee, woran das liegen könnte? Wird mein Raspberry Pi 3B langsam zu "schwach" ?
Danke im Voraus und Grüße
-
@tbi sagte: Wird mein Raspberry Pi 3B langsam zu "schwach" ?
Was sagt
top
? Wie viele aktive Instanzen? -
@paul53
insgesamt 25 Instanzen, davon schon nur noch 15 aktivtop - 23:21:58 up 19 min, 1 user, load average: 0,63, 0,96, 0,82 Tasks: 134 total, 2 running, 132 sleeping, 0 stopped, 0 zombie %CPU(s): 5,3 us, 1,1 sy, 0,0 ni, 93,1 id, 0,0 wa, 0,0 hi, 0,5 si, 0,0 st MiB Spch: 922,8 total, 123,5 free, 534,6 used, 264,7 buff/cache MiB Swap: 100,0 total, 91,3 free, 8,7 used. 397,4 avail Spch PID USER PR NI VIRT RES SHR S %CPU %MEM ZEIT+ BEFEHL 1929 iobroker 20 0 250864 134056 28488 S 8,9 14,2 1:54.12 iobroker.js-con 2144 iobroker 20 0 175424 62112 28488 S 6,6 6,6 0:18.12 io.shelly.0 2076 iobroker 20 0 165056 51092 29328 S 3,6 5,4 0:08.11 io.chromecast.0 1948 iobroker 20 0 190616 79384 33548 S 2,0 8,4 0:25.34 io.admin.0 1959 iobroker 20 0 172128 61952 33520 S 1,3 6,6 0:10.84 io.telegram.0 2156 iobroker 20 0 168076 52148 28336 S 1,3 5,5 0:05.79 io.web.0 2016 iobroker 20 0 161880 50108 28372 S 1,0 5,3 0:04.88 io.hm-rpc.2 376 avahi 20 0 6916 2164 1976 S 0,7 0,2 0:00.98 avahi-daemon 2095 iobroker 20 0 162432 50260 28380 S 0,7 5,3 0:04.97 io.doorbird.0 1200 pi 20 0 14512 4368 3472 S 0,3 0,5 0:00.47 sshd 1941 pi 20 0 11320 3204 2612 R 0,3 0,3 0:01.37 top 2015 root 20 0 0 0 0 I 0,3 0,0 0:00.08 kworker/3:0-mm_p+ 1 root 20 0 34680 6752 5240 S 0,0 0,7 0:08.37 systemd 2 root 20 0 0 0 0 S 0,0 0,0 0:00.02 kthreadd 3 root 0 -20 0 0 0 I 0,0 0,0 0:00.00 rcu_gp 4 root 0 -20 0 0 0 I 0,0 0,0 0:00.00 rcu_par_gp 8 root 0 -20 0 0 0 I 0,0 0,0 0:00.00 mm_percpu_wq 9 root 20 0 0 0 0 S 0,0 0,0 0:00.00 rcu_tasks_rude_ 10 root 20 0 0 0 0 S 0,0 0,0 0:00.00 rcu_tasks_trace 11 root 20 0 0 0 0 S 0,0 0,0 0:00.55 ksoftirqd/0 12 root 20 0 0 0 0 R 0,0 0,0 0:01.14 rcu_sched
-
@tbi sagte: nur noch 15 aktiv
Das ist schon die Obergrenze für 1 GB RAM. Die Swap-Nutzung zeigt, dass es zeitweise eng wurde.
-
@paul53 - Danke dir!!
oh man - naja, ich habs befürchtet.
darum auch der Versuch das ganze in den Docker der NAS zu ziehen. Aber wenns schon mal am Backup scheitert ist das natürlich nicht gut. -
@paul53 aber nochmal ne Idee/frage.
wenn ich übers Terminal doch
iobroker stop
und danniobroker backup
mache, dann dürfte die Auslastung doch kaum mehr da sein, da alle Instanzen ja gestoppt sind.darum versteh ichs eigentlich nicht, weshalb er dann nicht mal mehr ein Backup machen kann?
-
@tbi sagte: wenn ich übers Terminal doch iobroker stop und dann iobroker backup mache
Funktioniert es mit vorherigem "iobroker stop" auch nicht? Dann muss die Ursache wohl eine andere sein.
-
@paul53 nein, auch im gestoppten Zustand funktioniert es nicht mit der selben Fehlermeldung:
pi@raspberrypi:~ $ iobroker stop pi@raspberrypi:~ $ iobroker status iobroker is not running on this host. Objects type: jsonl States type: jsonl pi@raspberrypi:~ $ iobroker backup host.raspberrypi 13408 states saved host.raspberrypi 16870 objects saved <--- Last few GCs ---> [2259:0x4662d10] 27487 ms: Scavenge 175.2 (195.2) -> 174.9 (197.2) MB, 7.8 / 0.0 ms (average mu = 0.975, current mu = 0.963) allocation failure [2259:0x4662d10] 28933 ms: Mark-sweep (reduce) 266.6 (286.9) -> 176.4 (186.6) MB, 212.7 / 0.0 ms (+ 0.0 ms in 0 steps since start of marking, biggest step 0.0 ms, walltime since start of marking 219 ms) (average mu = 0.934, current mu = 0.898) externa <--- JS stacktrace ---> FATAL ERROR: MarkCompactCollector: young object promotion failed Allocation failed - JavaScript heap out of memory /usr/bin/iobroker: Zeile 8: 2258 Abgebrochen sudo -H -u iobroker node /opt/iobroker/node_modules/iobroker.js-controller/iobroker.js "$@"
-
@tbi
Backups brauchen viel Speicher. -
lösung für denjenigen, der das mal liest und auch vom Raspberry in den Docker migrieren möchte aber kein Backup hinbekommt:
-
Mit der Konsole beim Raspberry einloggen
-
Das Verzeichnis /opt/iobroker tar.gz'n
-
Dann per FTP runterziehn und
-
im Docker gemounteten Verzeichnis extrahieren (vorher die dortigen Inhalte löschen)
-
dann die Applikation im Docker starten und es klappt.
-
-
@tbi Hi, welcher js-controller ist denn im Einsatz?
-
@apollon77 Hi,
Der Adapter Javascriptausführung in Version 5.2.21
NODE.JS: V14.19.0
NPM: 6.14.16 -
-
Ich hab aktuell das gleiche Problem mit js 4.0.18
Beim Update auf js 4.0.18 habe ich auch node.js von 12 auf 14 aktualisiert.
vllt. liegt es daran?
-
Nein, backup funktioniert natürlich grundsätzlich auch mit nodejs@14.
-
@kuddel Interessant. Man könnte man Node.js 16 versuchen oder ein Diowngrade auf die 12 um zu sehen ob es da jeweils besser ist ggf
-
-
@apollon77 backup mit node 14 funktioniert auch bei mir.
Allerdings mit controller v3 -
Hier kein Problem mit Backup:
nodejs 14.19.0
controller 4.0.15@apollon77 Edit: Das war beim Testsystem...
Beim pi slave meines produktivsystems mit controller 4.0.18 und nodejs 14.19.0 gibt es auch diese Fehlermeldung...pi@iobrokerpi:~ $ iob backup host.iobrokerpi 15949 states saved host.iobrokerpi 18108 objects saved <--- Last few GCs ---> [18127:0x3f13e00] 20166 ms: Scavenge 177.6 (199.9) -> 177.3 (201.9) MB, 8.0 / 0.0 ms (average mu = 0.944, current mu = 0.934) allocation failure [18127:0x3f13e00] 22449 ms: Mark-sweep (reduce) 311.9 (336.2) -> 177.3 (184.9 ) MB, 160.8 / 0.0 ms (+ 0.0 ms in 0 steps since start of marking, biggest step 0.0 ms, walltime since start of marking 655 ms) (average mu = 0.946, current mu = 0.946) extern <--- JS stacktrace ---> FATAL ERROR: MarkCompactCollector: young object promotion failed Allocation fail ed - JavaScript heap out of memory /usr/bin/iob: line 8: 18126 Aborted sudo -H -u iobroker node /opt/iobroker/node_modules/iobroker.js-controller/iobroker.js "$@" pi@iobrokerpi:~ $
Edit2: Beim Master und beim 2. Slave (ein NUC) keine Fehlermeldung
-
@fredf sagte in Backup seit Update auf NodeJS 14 nicht mehr möglich:
Edit2: Beim Master und beim 2. Slave (ein NUC) keine Fehlermeldung
Wie unterscheiden die sich in Bezug auf "free -m" ?