Sync failed with error "Ineffective mark-compacts near heap limit Allocation failed - JavaScript heap out of memory"

Salut, je tape cette commande directement avant de synchroniser ? Je l’inclus à duniter sync url… ?
Désolé pour ma question de newbie ! :slight_smile:

Le plus simple est que tu exécutes cette commande juste avant de lancer duniter sync ....
Je ne promets pas que ça marche. Mais ça se tente.

J’essaye également de mon côté car j’ai eu le même problème en synchronisant une version 1.8.6, vers 98%.

EDIT : ma synchro est allée au bout avec cette config.

3 Likes

Moi aussi, grâce à cette config, mon serveur est enfin de retour ! Peut-être faudrait-il ajouter cette option dans les documentations sur la synchro Duniter.

2 Likes

Synchro bloquée à 44% depuis 1h malgré la commande export NODE_OPTIONS=–max-old-space-size=8192 avant de synchroniser…
Je vais re-tenter mais je suis septique… :frowning:

Edit-------------

J’ai laissé tourner cette nuit mais la synchro c’est arrêté à 98% de télécharger et 96% appliqué avec le même message d’erreur qu’au dessus…
Je relance ce matin.

Bon, j’ai réessayé ce matin, mais toujours pareil ! L’erreur se produit à 98% de téléchargement et 96% d’appliqué… :frowning: Je suis dubitatif sur le fait que cela soit un problème de mémoire.

Status: Peers...
<--- Last few GCs --->

[1505237:0x36438c0] 10873010 ms: Mark-sweep 1324.8 (1439.6) -> 1308.9 (1440.1) MB, 697.9 / 0.6 ms  (average mu = 0.202, current mu = 0.144) allocation failure scavenge might not succeed
[1505237:0x36438c0] 10873826 ms: Mark-sweep 1325.8 (1440.6) -> 1308.7 (1440.6) MB, 700.1 / 0.6 ms  (average mu = 0.173, current mu = 0.142) allocation failure scavenge might not succeed


<--- JS stacktrace --->

==== JS stack trace =========================================

    0: ExitFrame [pc: 0x26273f0c4b61]
Security context: 0x04a43b19e6c1 <JSObject>
    1: toString [0x2b248aa20651] [buffer.js:~643] [pc=0x2627417f498c](this=0x250e55b97101 <Uint8Array map = 0x429669c9e79>,encoding=0x2c0d8d2826f1 <undefined>,start=0x2c0d8d2826f1 <undefined>,end=0x2c0d8d2826f1 <undefined>)
    2: arguments adaptor frame: 0->3
    3: InternalFrame [pc: 0x26273e90ee75]
    4: EntryFrame [pc: 0x26273e9092c1]
    5: ExitFrame [...

FATAL ERROR: Ineffective mark-compacts near heap limit Allocation failed - JavaScript heap out of memory
 1: 0x8fb090 node::Abort() [/opt/duniter//node/bin/node]
 2: 0x8fb0dc  [/opt/duniter//node/bin/node]
 3: 0xb031ce v8::Utils::ReportOOMFailure(v8::internal::Isolate*, char const*, bool) [/opt/duniter//node/bin/node]
 4: 0xb03404 v8::internal::V8::FatalProcessOutOfMemory(v8::internal::Isolate*, char const*, bool) [/opt/duniter//node/bin/node]
 5: 0xef7462  [/opt/duniter//node/bin/node]
 6: 0xef7568 v8::internal::Heap::CheckIneffectiveMarkCompact(unsigned long, double) [/opt/duniter//node/bin/node]
 7: 0xf03642 v8::internal::Heap::PerformGarbageCollection(v8::internal::GarbageCollector, v8::GCCallbackFlags) [/opt/duniter//node/bin/node]
 8: 0xf03f74 v8::internal::Heap::CollectGarbage(v8::internal::AllocationSpace, v8::internal::GarbageCollectionReason, v8::GCCallbackFlags) [/opt/duniter//node/bin/node]
 9: 0xf06be1 v8::internal::Heap::AllocateRawWithRetryOrFail(int, v8::internal::AllocationSpace, v8::internal::AllocationAlignment) [/opt/duniter//node/bin/node]
10: 0xeceec5  [/opt/duniter//node/bin/node]
11: 0xed673a v8::internal::Factory::NewRawOneByteString(int, v8::internal::PretenureFlag) [/opt/duniter//node/bin/node]
12: 0xed6a4b v8::internal::Factory::NewStringFromOneByte(v8::internal::Vector<unsigned char const>, v8::internal::PretenureFlag) [/opt/duniter//node/bin/node]
13: 0xed749d v8::internal::Factory::NewStringFromUtf8(v8::internal::Vector<char const>, v8::internal::PretenureFlag) [/opt/duniter//node/bin/node]
14: 0xb11129 v8::String::NewFromUtf8(v8::Isolate*, char const*, v8::NewStringType, int) [/opt/duniter//node/bin/node]
15: 0x9c37e8 node::StringBytes::Encode(v8::Isolate*, char const*, unsigned long, node::encoding, v8::Local<v8::Value>*) [/opt/duniter//node/bin/node]
16: 0x9177a0  [/opt/duniter//node/bin/node]
17: 0x26273f0c4b61 
/usr/bin/duniter : ligne 15 : 1505237 Abandon                 $NODE "$DUNITER_DIR/bin/duniter" "$@"

suite du post : Tentative de synchro vers g1.duniter.org depuis node, ko - #15 by guenoel

J’ai arrêté une autre machine virtuelle pour pouvoir allouer plus de RAM le temps de la synchro. J’ai 10 Go de RAM actuellement, ça devrait suffire ! J’ai relancé la synchro: à suivre…

Si si c’est bien un message d’erreur de manque de mémoire.
Comment as-tu installé Duniter ? Package Debian, Docker ou Yunohost ?

Es-tu sûr que la variable d’environnement NODE_OPTIONS est bien définie dans ton terminal de commandes, après la commande de Pini ? Pour vérifier :

env | grep NODE

doit renvoyer :

NODE_OPTIONS=--max-old-space-size=8192

Tu peux aussi tout taper sur la même ligne pour être bien sûr :

NODE_OPTIONS=--max-old-space-size=8192 duniter sync hostname
1 Like

cela ne me renvoie rien du tout… ça me redonne uniquement la main sur ma console.
Mon noeud est sous Yunohost depuis longtemps, ça tournait très bien ces derniers mois, pas de coupures rien…

Bon je vais réessayer avec la commande complète NODE_OPTIONS=–max-old-space-size=8192 duniter sync hostname on verra bien.

1 Like

Bon, décidément je n’ai pas de chance avec cette synchro, elle est allée au bout mais l’interface webadmin me dit que je suis désynchronisé puisqu’elle m’affiche le bloc 580499 du 30/11/2022 !!!
Voir capture d’écran ci-joint…

J’ai remarqué qu’en CLI, si la première commande échoue (synchronisation incomplète) elle ne retourne pas d’erreur, du coup, Duniter démarre avec une synchronisation incomplète :slight_smile:

duniter sync <endpoint> && systemctl start duniter

Salut, du coup tu me conseilles de recommencer la synchro avec ta commande ?

Non, je n’ai pas dit ça. Pour le paquet YunoHost, il y a la subtilité qu’il faut lancer la synchro avec l’utilisateur duniter.

1 Like

Avec Mes 10 Go de ram ça n’est pas passé mais j’ai pas lancé la commande

export NODE_OPTIONS=--max-old-space-size=8192

donc je relance avec la commande ci dessus…

Résultat de l’échec:
FATAL ERROR: Ineffective mark-compacts near heap limit Allocation failed - JavaScript heap out of memory

Progress:

Milestones:   [||||||||||||||||||||] 100 %
Download:     [||||||||||||||||||| ] 98 %
Apply:        [||||||||||||||||||| ] 96 %
Sandbox:      [                    ] 0 %
Peers:        [                    ] 0 %

Status: GOT chunck #2478/2523 from 619500 to 619749 on peer duniter.g1.1000i100.fr
<--- Last few GCs --->

[1301:0x3838890] 88009363 ms: Scavenge 1327.0 (1437.6) -> 1311.9 (1437.6) MB, 4.5 / 0.0 ms  (average mu = 0.302, current mu = 0.320) allocation failure
[1301:0x3838890] 88009538 ms: Scavenge 1327.0 (1437.6) -> 1312.2 (1438.1) MB, 4.4 / 0.0 ms  (average mu = 0.302, current mu = 0.320) allocation failure
[1301:0x3838890] 88009822 ms: Scavenge 1327.7 (1438.1) -> 1312.6 (1438.6) MB, 182.0 / 0.0 ms  (average mu = 0.302, current mu = 0.320) allocation failure


<--- JS stacktrace --->

==== JS stack trace =========================================

Security context: 0x25686a99e6c1 <JSObject>
    0: builtin exit frame: parse(this=0x25686a9919f9 <Object map = 0xc7bdf0042a9>,0x1a3fc2d22201 <Very long string[23438]>,0x25686a9919f9 <Object map = 0xc7bdf0042a9>)

    1: get [0x1c838637d271] [/opt/duniter/app/lib/dal/indexDAL/leveldb/LevelDBTable.js:~16] [pc=0x1c9f7264bd60](this=0x2d06b919d531 <LevelDBTable map = 0x1c8f57d9d8a1>,k=0x040afdf02801 <the_hole>)
    2: /* anonymous */ [0x1a3fc2...

FATAL ERROR: Ineffective mark-compacts near heap limit Allocation failed - JavaScript heap out of memory
 1: 0x8fb090 node::Abort() [/opt/duniter//node/bin/node]
 2: 0x8fb0dc  [/opt/duniter//node/bin/node]
 3: 0xb031ce v8::Utils::ReportOOMFailure(v8::internal::Isolate*, char const*, bool) [/opt/duniter//node/bin/node]
 4: 0xb03404 v8::internal::V8::FatalProcessOutOfMemory(v8::internal::Isolate*, char const*, bool) [/opt/duniter//node/bin/node]
 5: 0xef7462  [/opt/duniter//node/bin/node]
 6: 0xef7568 v8::internal::Heap::CheckIneffectiveMarkCompact(unsigned long, double) [/opt/duniter//node/bin/node]
 7: 0xf03642 v8::internal::Heap::PerformGarbageCollection(v8::internal::GarbageCollector, v8::GCCallbackFlags) [/opt/duniter//node/bin/node]
 8: 0xf03f74 v8::internal::Heap::CollectGarbage(v8::internal::AllocationSpace, v8::internal::GarbageCollectionReason, v8::GCCallbackFlags) [/opt/duniter//node/bin/node]
 9: 0xf06be1 v8::internal::Heap::AllocateRawWithRetryOrFail(int, v8::internal::AllocationSpace, v8::internal::AllocationAlignment) [/opt/duniter//node/bin/node]
10: 0xedbec0  [/opt/duniter//node/bin/node]
11: 0xedbf57 v8::internal::Factory::NewJSObject(v8::internal::Handle<v8::internal::JSFunction>, v8::internal::PretenureFlag) [/opt/duniter//node/bin/node]
12: 0xfc7136 v8::internal::JsonParser<true>::ParseJsonObject() [/opt/duniter//node/bin/node]
13: 0xfc7f90 v8::internal::JsonParser<true>::ParseJsonValue() [/opt/duniter//node/bin/node]
14: 0xfc8425 v8::internal::JsonParser<true>::ParseJsonArray() [/opt/duniter//node/bin/node]
15: 0xfc7fa0 v8::internal::JsonParser<true>::ParseJsonValue() [/opt/duniter//node/bin/node]
16: 0xfc74dc v8::internal::JsonParser<true>::ParseJsonObject() [/opt/duniter//node/bin/node]
17: 0xfc7f90 v8::internal::JsonParser<true>::ParseJsonValue() [/opt/duniter//node/bin/node]
18: 0xfc8004 v8::internal::JsonParser<true>::ParseJson() [/opt/duniter//node/bin/node]
19: 0xbd7ad8 v8::internal::Builtin_JsonParse(int, v8::internal::Object**, v8::internal::Isolate*) [/opt/duniter//node/bin/node]
20: 0x1c9f6bb5bf7d
/usr/bin/duniter : ligne 15 :  1301 Abandon                 $NODE "$DUNITER_DIR/bin/duniter" "$@"

Salut j’ai refait une synchro avec l’utilisateur duniter mais ça ne change rien, le noeud synchronise jusqu’au bout mais toujours avec le retard à novembre 2022…

Sur ma machine avec 1 Go de libre, il m’est impossible de synchroniser, la ram sature autour de 50 % de la synchronisation. Ce que je fais, c’est une copie des données d’un nœud Duniter synchronisé vers cette machine ram en difficulté. Je vous laisse adapter les chemins et l’hôte ssh :

cd $HOME/.config/duniter_default/duniter
tar cavf duniter-g1-time-date.tar.gz data duniter.db g1 peers.db txs.db
rsync -avh --progress duniter-g1-time-date.tar.gz yuno-host

# Pour YunoHost
ssh yuno-host
sudo -i
cd /home/yunohost.app/duniter/duniter_default/
tar xvf duniter-g1-time-date.tar.gz
chown -r duniter: *
systemctl start duniter

Il faut généralement pas trop trainer pour ces étapes. J’ai des fois un problème pour démarrer le service. Surement, dû aux droits. Autrement, le nœud rattrape les blocs qui lui manque une fois s’être connecté aux autres nœuds via WS2P. Donc, ça fonctionne comme hack. Après, il faut avoir un autre nœud synchronisé.

1 Like

Sur Matrix Westbam à réussi à syncro son noeud duniter sur yunohost sur une machine avec 8Go. Il à limité la synchro à 5Go d’utilisation de RAM et avec l utilisateur duniter avec cette commande:

sudo su - duniter -c "NODE_OPTIONS=--max-old-space-size=5120 duniter --home /home/yunohost.app/duniter sync g1.duniter.org"
1 Like

Nouvel essai :

guenoel@debian ~/duniter % su -c "NODE_OPTIONS=--max-old-space-size=5120 ./target/release/duniter sync g1.duniter.org"

Progress:

Milestones:   [||||||||||||||||||||] 100 %
Download:     [|||||||||||||||||   ] 88 %
Apply:        [|||||||||||||||||   ] 87 %
Sandbox:      [                    ] 0 %
Peers:        [                    ] 0 %

Status: Peers...
Message from syslogd@debian at Jun  5 00:39:56 ...
 kernel:[223883.449828] NMI watchdog: BUG: soft lockup - CPU#1 stuck for 22s! [Socket Thread:6455]

J’ai pas tout collé mais au total il y 117 PID ! C’est normal ?

htop

  1  [||                                                                                      1.3%]   Tasks: 122, 451 thr; 3 running
  2  [                                                                                        0.0%]   Load average: 92.78 90.57 89.85
  3  [                                                                                        0.0%]   Uptime: 3 days, 07:59:13
  4  [                                                                                        0.0%]
  Mem[|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||10.7G/15.7G]
  Swp[||||||||||||                                                                      386M/3.00G]

  PID USER      PRI  NI  VIRT   RES   SHR S CPU% MEM%   TIME+  Command
17646 root       20   0 12.9G 10.5G  442M R  0.0 67.3  9h19:33 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17707 root       20   0 12.9G 10.5G  442M D  0.0 67.3  1h45:41 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17657 root       20   0 12.9G 10.5G  442M S  0.0 67.3 35:12.98 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17659 root       20   0 12.9G 10.5G  442M S  0.0 67.3 34:29.57 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17658 root       20   0 12.9G 10.5G  442M S  0.0 67.3 34:21.75 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17656 root       20   0 12.9G 10.5G  442M S  0.0 67.3 33:31.65 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17674 root       20   0 12.9G 10.5G  442M S  0.0 67.3  9:44.70 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17684 root       20   0 12.9G 10.5G  442M S  0.0 67.3  8:33.80 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17685 root       20   0 12.9G 10.5G  442M S  0.0 67.3  8:23.51 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17672 root       20   0 12.9G 10.5G  442M S  0.0 67.3  7:25.01 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17651 root       20   0 12.9G 10.5G  442M S  0.0 67.3  5:04.33 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17648 root       20   0 12.9G 10.5G  442M S  0.0 67.3  5:02.29 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17650 root       20   0 12.9G 10.5G  442M S  0.0 67.3  4:51.18 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17649 root       20   0 12.9G 10.5G  442M S  0.0 67.3  4:49.17 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17948 root       20   0 12.9G 10.5G  442M D  0.0 67.3  1:12.85 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17736 root       20   0 12.9G 10.5G  442M D  0.0 67.3  1:10.08 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17805 root       20   0 12.9G 10.5G  442M D  0.0 67.3  1:08.99 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17795 root       20   0 12.9G 10.5G  442M D  0.0 67.3  1:08.68 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17813 root       20   0 12.9G 10.5G  442M D  0.0 67.3  1:08.51 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17796 root       20   0 12.9G 10.5G  442M D  0.0 67.3  1:08.20 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
18017 root       20   0 12.9G 10.5G  442M D  0.0 67.3  1:07.82 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17804 root       20   0 12.9G 10.5G  442M D  0.0 67.3  1:07.54 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17664 root       20   0 12.9G 10.5G  442M D  0.0 67.3  1:07.04 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17788 root       20   0 12.9G 10.5G  442M D  0.0 67.3  1:06.15 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17810 root       20   0 12.9G 10.5G  442M D  0.0 67.3  1:05.95 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17817 root       20   0 12.9G 10.5G  442M D  0.0 67.3  1:05.98 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17711 root       20   0 12.9G 10.5G  442M D  0.0 67.3  1:05.68 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
18090 root       20   0 12.9G 10.5G  442M D  0.0 67.3  1:05.66 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17923 root       20   0 12.9G 10.5G  442M D  0.0 67.3  1:05.29 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17852 root       20   0 12.9G 10.5G  442M D  0.0 67.3  1:05.15 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17851 root       20   0 12.9G 10.5G  442M D  0.0 67.3  1:04.99 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17663 root       20   0 12.9G 10.5G  442M D  0.0 67.3  1:04.96 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17821 root       20   0 12.9G 10.5G  442M D  0.0 67.3  1:04.90 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17847 root       20   0 12.9G 10.5G  442M D  0.0 67.3  1:04.72 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17905 root       20   0 12.9G 10.5G  442M D  0.0 67.3  1:04.86 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17730 root       20   0 12.9G 10.5G  442M D  0.0 67.3  1:04.68 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17816 root       20   0 12.9G 10.5G  442M D  0.0 67.3  1:04.66 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
18021 root       20   0 12.9G 10.5G  442M D  0.0 67.3  1:04.58 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17949 root       20   0 12.9G 10.5G  442M D  0.0 67.3  1:04.51 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17762 root       20   0 12.9G 10.5G  442M D  0.0 67.3  1:04.31 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17755 root       20   0 12.9G 10.5G  442M D  0.0 67.3  1:04.25 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17792 root       20   0 12.9G 10.5G  442M D  0.0 67.3  1:04.14 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17913 root       20   0 12.9G 10.5G  442M D  0.0 67.3  1:04.10 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17667 root       20   0 12.9G 10.5G  442M D  0.0 67.3  1:04.04 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17712 root       20   0 12.9G 10.5G  442M D  0.0 67.3  1:03.73 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17758 root       20   0 12.9G 10.5G  442M D  0.0 67.3  1:03.36 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17773 root       20   0 12.9G 10.5G  442M D  0.0 67.3  1:03.30 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17844 root       20   0 12.9G 10.5G  442M D  0.0 67.3  1:03.19 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17837 root       20   0 12.9G 10.5G  442M D  0.0 67.3  1:03.11 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17791 root       20   0 12.9G 10.5G  442M D  0.0 67.3  1:03.11 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
18043 root       20   0 12.9G 10.5G  442M D  0.0 67.3  1:02.89 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17716 root       20   0 12.9G 10.5G  442M D  0.0 67.3  1:02.78 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17858 root       20   0 12.9G 10.5G  442M D  0.0 67.3  1:02.77 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17809 root       20   0 12.9G 10.5G  442M D  0.0 67.3  1:02.75 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17763 root       20   0 12.9G 10.5G  442M D  0.0 67.3  1:02.68 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17710 root       20   0 12.9G 10.5G  442M D  0.0 67.3  1:02.70 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17759 root       20   0 12.9G 10.5G  442M D  0.0 67.3  1:02.50 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
18006 root       20   0 12.9G 10.5G  442M D  0.0 67.3  1:02.41 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17770 root       20   0 12.9G 10.5G  442M D  0.0 67.3  1:02.36 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17666 root       20   0 12.9G 10.5G  442M D  0.0 67.3  1:02.28 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17797 root       20   0 12.9G 10.5G  442M D  0.0 67.3  1:02.06 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17921 root       20   0 12.9G 10.5G  442M D  0.0 67.3  1:02.01 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17668 root       20   0 12.9G 10.5G  442M D  0.0 67.3  1:01.86 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17719 root       20   0 12.9G 10.5G  442M D  0.0 67.3  1:01.84 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17926 root       20   0 12.9G 10.5G  442M D  0.0 67.3  1:01.68 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17925 root       20   0 12.9G 10.5G  442M D  0.0 67.3  1:01.66 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17768 root       20   0 12.9G 10.5G  442M D  0.0 67.3  1:01.55 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17907 root       20   0 12.9G 10.5G  442M D  0.0 67.3  1:01.53 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17662 root       20   0 12.9G 10.5G  442M D  0.0 67.3  1:01.31 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17715 root       20   0 12.9G 10.5G  442M D  0.0 67.3  1:01.25 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
17883 root       20   0 12.9G 10.5G  442M D  0.0 67.3  1:01.01 node --max-old-space-size=4096 bin/duniter_js --loglevel info sync g1.duniter.org:443
...
...

05/06/2023
Finalement après de nombreux essai, j’ai fini par terminer une synchro avec la même commande. Je viens de lancer mon noeud.

06/06/2023
Je suis au bloc 632 629 ça synchronise pas. J ai du mettre trop de temps pour lancer mon noeud. Je dois recommencer une synchro depuis le début ?

1 Like

Bonjour à tous,

J’ai le même problème, je fais tourner duniter serveur 1.8.6 sur linux mint.
Plusieurs tentatives de synchro via la commande “duniter sync g1.duniter.org” me renvoient un problème de manque de mémoire.

J’ai essayé avec la commande “NODE_OPTIONS=–max-old-space-size=8192”, même résultat :

Milestones:   [||||||||||||||||||||] 100 %
Download:     [||||||||||||||||||| ] 98 %
Apply:        [||||||||||||||||||| ] 96 %
Sandbox:      [                    ] 0 %
Peers:        [                    ] 0 %

Status: GOT chunck #2477/2531 from 619250 to 619499 on peer g1.duniter.org
<--- Last few GCs --->

[50930:0x33e38b0] 11395940 ms: Scavenge 1326.3 (1435.1) -> 1314.0 (1436.1) MB, 4.1 / 0.0 ms  (average mu = 0.387, current mu = 0.384) allocation failure 
[50930:0x33e38b0] 11395992 ms: Scavenge 1327.9 (1436.1) -> 1315.6 (1437.6) MB, 4.0 / 0.0 ms  (average mu = 0.387, current mu = 0.384) allocation failure 
[50930:0x33e38b0] 11396045 ms: Scavenge 1329.6 (1437.6) -> 1317.4 (1439.1) MB, 4.2 / 0.0 ms  (average mu = 0.387, current mu = 0.384) allocation failure 


<--- JS stacktrace --->

==== JS stack trace =========================================

Security context: 0x160281d1e6c1 <JSObject>
    0: builtin exit frame: stringify(this=0x160281d119f9 <Object map = 0x3cd5563842a9>,0x13c69ac826f1 <undefined>,0x13c69ac826f1 <undefined>,0x304531b0bf39 <Object map = 0x3f1b9177e539>,0x160281d119f9 <Object map = 0x3cd5563842a9>)

    1: arguments adaptor frame: 1->3
    2: put [0x321685a51149] [/opt/duniter/app/lib/dal/indexDAL/leveldb/LevelDBTable.js:~35] [pc=0x436f5dfca42](this=0x1b24575fdb...

FATAL ERROR: Ineffective mark-compacts near heap limit Allocation failed - JavaScript heap out of memory
 1: 0x8fb090 node::Abort() [/opt/duniter//node/bin/node]
 2: 0x8fb0dc  [/opt/duniter//node/bin/node]
 3: 0xb031ce v8::Utils::ReportOOMFailure(v8::internal::Isolate*, char const*, bool) [/opt/duniter//node/bin/node]
 4: 0xb03404 v8::internal::V8::FatalProcessOutOfMemory(v8::internal::Isolate*, char const*, bool) [/opt/duniter//node/bin/node]
 5: 0xef7462  [/opt/duniter//node/bin/node]
 6: 0xef7568 v8::internal::Heap::CheckIneffectiveMarkCompact(unsigned long, double) [/opt/duniter//node/bin/node]
 7: 0xf03642 v8::internal::Heap::PerformGarbageCollection(v8::internal::GarbageCollector, v8::GCCallbackFlags) [/opt/duniter//node/bin/node]
 8: 0xf03f74 v8::internal::Heap::CollectGarbage(v8::internal::AllocationSpace, v8::internal::GarbageCollectionReason, v8::GCCallbackFlags) [/opt/duniter//node/bin/node]
 9: 0xf06be1 v8::internal::Heap::AllocateRawWithRetryOrFail(int, v8::internal::AllocationSpace, v8::internal::AllocationAlignment) [/opt/duniter//node/bin/node]
10: 0xeceec5  [/opt/duniter//node/bin/node]
11: 0xed673a v8::internal::Factory::NewRawOneByteString(int, v8::internal::PretenureFlag) [/opt/duniter//node/bin/node]
12: 0x1206a95 v8::internal::IncrementalStringBuilder::Extend() [/opt/duniter//node/bin/node]
13: 0xfcb2cf v8::internal::JsonStringifier::Result v8::internal::JsonStringifier::Serialize_<true>(v8::internal::Handle<v8::internal::Object>, bool, v8::internal::Handle<v8::internal::Object>) [/opt/duniter//node/bin/node]
14: 0xfd01bd v8::internal::JsonStringifier::Result v8::internal::JsonStringifier::Serialize_<false>(v8::internal::Handle<v8::internal::Object>, bool, v8::internal::Handle<v8::internal::Object>) [/opt/duniter//node/bin/node]
15: 0xfcd70a v8::internal::JsonStringifier::Result v8::internal::JsonStringifier::Serialize_<true>(v8::internal::Handle<v8::internal::Object>, bool, v8::internal::Handle<v8::internal::Object>) [/opt/duniter//node/bin/node]
16: 0xfd01bd v8::internal::JsonStringifier::Result v8::internal::JsonStringifier::Serialize_<false>(v8::internal::Handle<v8::internal::Object>, bool, v8::internal::Handle<v8::internal::Object>) [/opt/duniter//node/bin/node]
17: 0xfd0f19 v8::internal::JsonStringifier::Stringify(v8::internal::Handle<v8::internal::Object>, v8::internal::Handle<v8::internal::Object>, v8::internal::Handle<v8::internal::Object>) [/opt/duniter//node/bin/node]
18: 0xbd7cf1 v8::internal::Builtin_JsonStringify(int, v8::internal::Object**, v8::internal::Isolate*) [/opt/duniter//node/bin/node]
19: 0x436f39dbf7d 
/usr/bin/duniter : ligne 15 : 50930 Abandon                 (core dumped) $NODE "$DUNITER_DIR/bin/duniter" "$@"

Je suis en train de synchroniser avec la commande “NODE_OPTIONS=–max-old-space-size=8192 duniter sync g1.duniter.org
On va voir ce que ça donne.

Edit : le résultat est le même que précédemment :thinking:

Bon, je pense que je vais abandonner la synchronisation sous Yunohost tant qu’il n’y aura pas une nouvelle mise à jour de Duniter…
j’ai refait une énième synchronisation, elles est allée au bout, mais pour autant lorsque je lance la webadmin, je suis toujours en retard de bloc en date du 30/01/2023…
Il y a vraiment un soucis important car plus le temps passe et plus nous sommes nombreux à ne plus arriver à synchroniser nos noeuds duniter.

1 Like