Dépendances : JS heap out of memory - Raspberry Pi 3

Voici:

16.17.1-deb-1nodesource1

Mouais c’était vraiment une bouteille à la mer mon histoire de nodejs je n’y croyais pas moi-même…

En gros nodejs est surchargé à un moment du build d’où l’erreur. Après ce n’est pas réellement bloquant en soit vu que tu le dis toi-même le réseau fonctionne.

Pour info le plugin a été installé sur maintes pi3 sans soucis jusqu’à maintenant. Avec boot sur SSD je ne sais pas mais je doute que ce soit lié.

La seule chose que je vois dans l’immédiat serait de redémarrer Jeedom et relancer l’installation des dépendances zwavejs après le redémarrage pour voir si c’est mieux ?

Il me semble déjà avoir tenté hier mais je relance, le reboot est en cours et je relance derrière.

Ce qui me tracasse c’est que le build ne va pas au bout donc même si aujourd’hui cela fonctionne je me dit que tout n’est peut être pas bon…

Idem :confused:
Même erreur.

Je suis repassé sur mon backup.
J’ai cherché depuis hier et à chaque fois je retombe sur ce genre de retour:

image

J’ai l’impression que cela sert justement à limité la mémoire pour éviter un dépassement de capacité.

1 « J'aime »

J’ai réussi à installer le dépendances sans ereur :smiley:

Pour ça, j’ai dû éditer le fichier /var/www/html/plugins/zwavejs/resources/post_install.sh pour remplacer la ligne

sudo yarn run build

par

sudo NODE_OPTIONS="--max_old_space_size=2048" yarn run build

Et le bouton Interface ZwaveJs UI fonctionne.

Edit:
4096 ne fonctionnait pas, ça me donnait d’autre erreurs. J’ai tenté 2048 et c’est OK.

Edit 2:
Il semble que l’augmentation de la taille du swap soit une autre solution à privilégier. Le fichier post_install.sh doit être modifié à chaque mise à jour du plugin alors que l’augmentation du swap est pérenne.

5 « J'aime »

4096 ce doit être la valeur par défaut de nodejs en version 16

bien joué @ktn par contre faut voir comment implémenter ça maintenant…

Ce qui me dérange dans cette histoire c’est d’avoir
image

alors que l’installation ne s’est pas bien déroulée.

Il faudrait que la script post_install.sh vérifie l’exit status des commandes lancées et informe correctement la core sur le résultat de l’installation.

1 « J'aime »

J’ai fait la modif et je viens de relancer de mon coté ! A voir, cool si c’est ca :slight_smile:

Pour moi dans tous mes plugin j’ai le même bouton relancer.

1 « J'aime »

Pas sûr car si je mettait --max-old-space-size=4096 j’avais une autre erreur dès le lancement du build. J’ai l’impression qu’il n’y a pas assez de mémoire dispo sur le PI pour 4096. La valeur par défaut doit être inférieur à 2048 et être insuffisante pour le build.

Bah tu n’as pas relancé l’installation des dépendances après la modification ? Elles n’ont pas abouties ?

Edit : @ktn OK C’était avant de corriger, les dépendances étaient OK… il avait build le nécessaire on dirait

Il y a pourtant des installations sur pi 3 qui build sans problèmes mais oui il a l’air short

Oui, c’est normal. Le souicis est d’avoir OK alors qu’il y a eu une erreur.

Je consulte généralement les logs pour chercher la cause d’une erreur qui a été remontée ou constatée, pas pour vérifier s’il n’y en a pas eu.

Si, j’avai lancé l’installation des dépendances et considéré que tout s’était bien passé car j’avais l’info OK. Ce n’est qu’après la lecture du message de @Unnamed71 que j’ai consulté mes logs et constaté qu’il y avait eu un problème.

Des utilisateurs n’ont peut-être pas remarqué qu’il y a un soucis car ils ont le statut des dépendances qui est OK

Non parce que j’ai personnellement un pi3 sur lequel j’ai testé l’installation, je peux t’assurer que j’ai checké les logs :wink:

Mais c’était une machine spécialement montée pour l’occasion sur laquelle rien d’autre ne tournait ou pas grand-chose tout du moins.

Il faudrait que des utilisateurs de pi3 se manifestent et vérifient leurs logs zwavejs_packages

Je confirme, la modif est ok chez moi également, je relance la bascule OpenZwave → Zwave JS et les modules sont mieux reconnu par défaut et les commandes sont présentes par défaut sans intervention de ma part à l’inverse d’hier !

Et mes modules on bien un nom correct sans xxxx dans le nom (comme j’ai pu le constater sur le forum) Donc je pense que d’autres ont le même pb.

Et j’avais du reconf mon smart implant, pas besoin aujourd’hui.

hello salvialf, tu as besoin des logs quand ça fait le JS heap je suppose? raspberry pi3b+ 1gb ram + 1gb de swap pour moi

pi3bplus-js_heap.log (5,3 Ko)

pour ma part j’ai attendu le lendemain matin, reboot, je stop le adguard et mes 3 container docker et c’était bon ça a build du premier coup.

Mais je confirme que ça passe en dépendances ok malgré l’erreur du build.

Je précise que mon observation sur le Statut OK malgré l’erreur n’est pas une critique sur un point de détails d’un plugin qui apporte une réelle amélioration par rapport à l’ancien openzwave.

Je voulais juste attirer l’attention sur un point qui pourrait être amélioré.

Merci aux développeurs pour ce plugin

Donc en stoppant des services sur ton Pi les dépendances déroulent complètement sans aucune erreur on est d’accord ?