# Blocage WotWizard et Monit (Duniter v1.7.21) au bloc 434742 à l’entrée d’ElenaMavida

**URL:** https://forum.duniter.org/t/blocage-wotwizard-et-monit-duniter-v1-7-21-au-bloc-434742-a-l-entree-d-elenamavida/8544
**Category:** Duniter-v1
**Tags:** duniter, wotwizard, modules, g1-monit
**Created:** [25 June 2021 11:37 UTC](https://forum.duniter.org/t/blocage-wotwizard-et-monit-duniter-v1-7-21-au-bloc-434742-a-l-entree-d-elenamavida/8544 "2021-06-25T11:37:59Z")
**Posts on this page:** 15
**Page:** 1

<div class="post-metadata">

### Author: ![gerard94](https://forum.duniter.org/user_avatar/forum.duniter.org/gerard94/32/58_2.png) [@gerard94](https://forum.duniter.org/u/gerard94)
#### Post date: [25 June 2021 11:37 UTC](https://forum.duniter.org/t/blocage-wotwizard-et-monit-duniter-v1-7-21-au-bloc-434742-a-l-entree-d-elenamavida/8544/1 "2021-06-25T11:37:59Z")

</div>

La version 1.7.21 de Duniter, utilisée pour faire tourner WotWizard, rejette obstinément le bloc 434742-00000006B17D15638D67C33F829C406BB3942CF578F8726DE4195BEFD9C2617D, malgré plusieurs essais infructueux de synchronisation. Du coup, WotWizard est bloqué depuis mercredi soir (23 juin).  
Quelqu’un aurait-il une idée pour débloquer la situation ? @elois @cgeek

---

<div class="post-metadata">

### Author: ![elois](https://forum.duniter.org/user_avatar/forum.duniter.org/elois/32/1541_2.png) [@elois](https://forum.duniter.org/u/elois)
#### Post date: [25 June 2021 14:32 UTC](https://forum.duniter.org/t/blocage-wotwizard-et-monit-duniter-v1-7-21-au-bloc-434742-a-l-entree-d-elenamavida/8544/2 "2021-06-25T14:32:08Z")

</div>

> [@gerard94](#):
>
> 434742

Hypothèse que je n’ai pas le temps de vérifier: peut-être, que du point de vue de duniter 1.7.21, ElenaMavida ne respecte pas la règle de distance, à cause d’un problème d’arrondi.  
Si c’est ça il suffit d’augmenter la valeur du param xpercent pour Duniter 1.7.21.

Sinon j’en profite pour te poser une question qui me trotte depuis quelque temps @gerard94 : je n’ai pas vraiment compris pourquoi wotwizard ne fonctionne pas avec Duniter 1.8. Il n’ y a eu aucun changement dans la base de donnée entre la 1.7 et la 1.8 donc ça ne peut pas être un problème de base de donnée.

---

<div class="post-metadata">

### Author: ![gerard94](https://forum.duniter.org/user_avatar/forum.duniter.org/gerard94/32/58_2.png) [@gerard94](https://forum.duniter.org/u/gerard94)
#### Post date: [25 June 2021 15:51 UTC](https://forum.duniter.org/t/blocage-wotwizard-et-monit-duniter-v1-7-21-au-bloc-434742-a-l-entree-d-elenamavida/8544/3 "2021-06-25T15:51:12Z")

</div>

> [@elois](#):
>
> peut-être, que du point de vue de duniter 1.7.21, ElenaMavida ne respecte pas la règle de distance, à cause d’un problème d’arrondi.

C’est une bonne idée. Mais, au bloc 434740, ElenaMavida était à au plus 5 pas de 92.58% des membres référents. Ce n’est pas ça.

> [@elois](#):
>
> je n’ai pas vraiment compris pourquoi wotwizard ne fonctionne pas avec Duniter 1.8

Duniter 1.7 crée une version SQLite de la base de données, si le paramètre “wotwizard” de conf.json est à true, que WotWizard utilise. Je n’ai jamais pu avoir une description de la bdd leveldb. Si tu peux me la fournir, en attendant GVA, cela résoudrait le problème.

---

<div class="post-metadata">

### Author: ![elois](https://forum.duniter.org/user_avatar/forum.duniter.org/elois/32/1541_2.png) [@elois](https://forum.duniter.org/u/elois)
#### Post date: [25 June 2021 16:03 UTC](https://forum.duniter.org/t/blocage-wotwizard-et-monit-duniter-v1-7-21-au-bloc-434742-a-l-entree-d-elenamavida/8544/4 "2021-06-25T16:03:27Z")

</div>

> [@gerard94](#):
>
> C’est une bonne idée. Mais, au bloc 434740, ElenaMavida était à au plus 5 pas de 92.58% des membres référents. Ce n’est pas ça.

Ok bah je sais pas et n’aurait pas le temps d’investiguer avant la semaine prochaine

> [@gerard94](#):
>
> Je n’ai jamais pu avoir une description de la bdd leveldb. Si tu peux me la fournir, en attendant GVA, cela résoudrait le problème.

L’été dernier je m’en suis créé une moi-même en passant au peigne fin le code typescript lié. J’ai pu décrire un schéma complet de la db leveldb en Rust ici: [dbs/src/databases/bc\_v1.rs · master · nodes / rust / duniter-core · GitLab](https://git.duniter.org/nodes/rust/duniter-core/-/blob/master/dbs/src/databases/bc_v1.rs)

Les types clés et valeur étant défini dans les dossiers `dbs/src/keys` et `dbs/src/values` 🙂

---

<div class="post-metadata">

### Author: ![tuxmain](https://forum.duniter.org/user_avatar/forum.duniter.org/tuxmain/32/6423_2.png) [@tuxmain](https://forum.duniter.org/u/tuxmain)
#### Post date: [25 June 2021 16:09 UTC](https://forum.duniter.org/t/blocage-wotwizard-et-monit-duniter-v1-7-21-au-bloc-434742-a-l-entree-d-elenamavida/8544/5 "2021-06-25T16:09:57Z")

</div>

> [@gerard94](#):
>
> Je n’ai jamais pu avoir une description de la bdd leveldb. Si tu peux me la fournir, en attendant GVA, cela résoudrait le problème.

Je me souviens avoir utilisé [cette doc](https://duniter.org/fr/contribuer/blockchain-nodejs/tutoriel-dev/chapitre-7-bdd/), qui parle de SQLite mais c’est encore comme ça, sauf que les colonnes sont plus ou moins les champs d’un dictionnaire JSON.

---

<div class="post-metadata">

### Author: ![gerard94](https://forum.duniter.org/user_avatar/forum.duniter.org/gerard94/32/58_2.png) [@gerard94](https://forum.duniter.org/u/gerard94)
#### Post date: [25 June 2021 16:15 UTC](https://forum.duniter.org/t/blocage-wotwizard-et-monit-duniter-v1-7-21-au-bloc-434742-a-l-entree-d-elenamavida/8544/6 "2021-06-25T16:15:42Z")

</div>

> [@tuxmain](#):
>
> Je me souviens avoir utilisé [cette doc](https://duniter.org/fr/contribuer/blockchain-nodejs/tutoriel-dev/chapitre-7-bdd/)

Oui, merci. C’est la doc que j’ai utilisé pour écrire WotWizard.

> [@tuxmain](#):
>
> c’est encore comme ça

Oui je m’en doute, mais le diable est dans les détails.

---

<div class="post-metadata">

### Author: ![gerard94](https://forum.duniter.org/user_avatar/forum.duniter.org/gerard94/32/58_2.png) [@gerard94](https://forum.duniter.org/u/gerard94)
#### Post date: [25 June 2021 16:22 UTC](https://forum.duniter.org/t/blocage-wotwizard-et-monit-duniter-v1-7-21-au-bloc-434742-a-l-entree-d-elenamavida/8544/7 "2021-06-25T16:22:29Z")

</div>

> [@elois](#):
>
> [dbs/src/databases/bc\_v1.rs · master · nodes / rust / duniter-core · GitLab](https://git.duniter.org/nodes/rust/duniter-core/-/blob/master/dbs/src/databases/bc_v1.rs)

Merci, je vais regarder ça de près.

---

<div class="post-metadata">

### Author: ![cgeek](https://forum.duniter.org/user_avatar/forum.duniter.org/cgeek/32/279_2.png) [@cgeek](https://forum.duniter.org/u/cgeek)
#### Post date: [26 June 2021 16:14 UTC](https://forum.duniter.org/t/blocage-wotwizard-et-monit-duniter-v1-7-21-au-bloc-434742-a-l-entree-d-elenamavida/8544/8 "2021-06-26T16:14:52Z")

</div>

> [@gerard94](#):
>
> C’est une bonne idée. Mais, au bloc 434740, ElenaMavida était à au plus 5 pas de 92.58% des membres référents. Ce n’est pas ça.

Pourtant, c’est bien sur la règle de distance que le bloc #434742 est refusé par Duniter 1.7.21, sur l’adhésion de ElenaMavida.

J’aurais plus de détails d’ici 23h.

---

<div class="post-metadata">

### Author: ![cgeek](https://forum.duniter.org/user_avatar/forum.duniter.org/cgeek/32/279_2.png) [@cgeek](https://forum.duniter.org/u/cgeek)
#### Post date: [26 June 2021 20:50 UTC](https://forum.duniter.org/t/blocage-wotwizard-et-monit-duniter-v1-7-21-au-bloc-434742-a-l-entree-d-elenamavida/8544/9 "2021-06-26T20:50:05Z")

</div>

Voici le détail vu par Duniter 1.7.21 concernant ce bloc 434742 pour l’entrée d’ElenaMavida :

```
nbSuccess = 1456
nbSentries = 1821
nbReached = 2229
isOutdistanced = true

```

Si l’on fait le rapport `nbSuccess / nbSentries`, on obtient 79,95%.

C’est vrai que ça ressemble à un problème d’arrondi, mais dans le cas de la synchro je trouve d’autres données curieuses. Je serai preneur de vos avis quant à ces chiffres.

---

<div class="post-metadata">

### Author: ![elois](https://forum.duniter.org/user_avatar/forum.duniter.org/elois/32/1541_2.png) [@elois](https://forum.duniter.org/u/elois)
#### Post date: [26 June 2021 23:42 UTC](https://forum.duniter.org/t/blocage-wotwizard-et-monit-duniter-v1-7-21-au-bloc-434742-a-l-entree-d-elenamavida/8544/10 "2021-06-26T23:42:13Z")

</div>

> [@cgeek](#):
>
> Si l’on fait le rapport `nbSuccess / nbSentries`, on obtient 79,95%.

Mon hypothèse était donc juste. C’est un problème déjà connu et qui s’est déjà produit par le passé :

> [@Duniter wotb : problème d'arrondi](https://forum.duniter.org/t/duniter-wotb-probleme-darrondi/7199):
>
> On voit to…

@gerard94 tu es obligé de reset data and sync: la sync ne vérifiant pas la règle de distance ça passera, c’est déjà comme ça qu’on a résolu le problème la dernière fois.

En fait on aurait du considéré la migration du module wotb comme un changement de protocole, puisse que le calcul de la règle de distance diffère légèrement dans certain cas (et qu’il est impossible de calculer l’arrondi de la même façon).  
Il faut donc considérer que la version 1.7.21 du Duniter n’est plus supportée (ou resync chaque fois que ce cas rare se produit).

---

<div class="post-metadata">

### Author: ![Maaltir](https://forum.duniter.org/user_avatar/forum.duniter.org/maaltir/32/5039_2.png) [@Maaltir](https://forum.duniter.org/u/Maaltir)
#### Post date: [27 June 2021 05:51 UTC](https://forum.duniter.org/t/blocage-wotwizard-et-monit-duniter-v1-7-21-au-bloc-434742-a-l-entree-d-elenamavida/8544/11 "2021-06-27T05:51:32Z")

</div>

Je vais peut-être dire une connerie, mais il peut sans doute arrivé que la règle soit OK lors d’un premier calcul, puis KO avec le même calcul quelque minutes plus tard.  
Cas ou quelques nouveau référents apparaissent à plus de 5 pas, ou que quelques certifs sur des chemins critiques arrivent à échéances. Pour quelqu’un juste à la limite cela peut-être fatal.

C’est prévu ça dans le protocole ?

---

<div class="post-metadata">

### Author: ![cgeek](https://forum.duniter.org/user_avatar/forum.duniter.org/cgeek/32/279_2.png) [@cgeek](https://forum.duniter.org/u/cgeek)
#### Post date: [27 June 2021 08:45 UTC](https://forum.duniter.org/t/blocage-wotwizard-et-monit-duniter-v1-7-21-au-bloc-434742-a-l-entree-d-elenamavida/8544/12 "2021-06-27T08:45:29Z")

</div>

> [@Versions de WotWizard](https://forum.duniter.org/t/versions-de-wotwizard/4390/71):
>
> C’est prévu ça dans le protocole ?

Oui, le temps est celui de la blockchain donc le cas est 100% reproductible et ne dépend pas de l’heure extérieure (de la machine).

Le problème est ailleurs.

Il y a d’une part le problème d’arrondi différent entre Duniter 1.7 et 1.8, mais peut-être aussi un problème de définition de toile. Notamment ce qui me surprend c’est la réponse de @gerard94 qui indique une couverture de 92.58% pour ElenaMavida, plutôt que les 79.95% que m’indique Duniter 1.7.

> [@cgeek](#):
>
> dans le cas de la synchro je trouve d’autres données curieuses

Un soucis que j’ai pu voir : en faisant une synchronisation jusqu’au bloc 43474 **5** (histoire de ne pas finir la sync sur le bloc problématique), [à cette ligne qui vérifie la distance](https://git.duniter.org/nodes/typescript/duniter/-/blob/v1.7.21/app/lib/indexer.ts#L2025) (v1.7.21), la variable `current` contient le bloc 43474 **5** plutôt que 43474 **1** (on est en train d’ajouter le bloc 43474 **2**!), ce qui est effectivement un bug.

Mais a priori seule la synchro est concernée, c’est la façon dont y sont ajoutés les blocs. Je n’ai pas encore pu voir si ce bug avait un impact sur wotb.

---

<div class="post-metadata">

### Author: ![gerard94](https://forum.duniter.org/user_avatar/forum.duniter.org/gerard94/32/58_2.png) [@gerard94](https://forum.duniter.org/u/gerard94)
#### Post date: [27 June 2021 14:25 UTC](https://forum.duniter.org/t/blocage-wotwizard-et-monit-duniter-v1-7-21-au-bloc-434742-a-l-entree-d-elenamavida/8544/13 "2021-06-27T14:25:40Z")

</div>

> [@Versions de WotWizard](https://forum.duniter.org/t/versions-de-wotwizard/4390/69):
>
> Si l’on fait le rapport `nbSuccess / nbSentries`, on obtient 79,95%.

Et pourtant, g1monit, au bloc 434741 lui donne 92.59% (au fait, @elois, g1monit est lui aussi coincé sur ce bloc). À moins que nos deux implémentations de l’algorithme soient fausses, il y a peut-être un problème dans celle de Duniter.

> [@Versions de WotWizard](https://forum.duniter.org/t/versions-de-wotwizard/4390/70):
>
> @gerard94 tu es obligé de reset data and sync: la sync ne vérifiant pas la règle de distance ça passera, c’est déjà comme ça qu’on a résolu le problème la dernière fois.

Oui, ça marche, je n’avais pas pensé à effacer préalablement les données. Merci.

---

<div class="post-metadata">

### Author: ![elois](https://forum.duniter.org/user_avatar/forum.duniter.org/elois/32/1541_2.png) [@elois](https://forum.duniter.org/u/elois)
#### Post date: [27 June 2021 19:38 UTC](https://forum.duniter.org/t/blocage-wotwizard-et-monit-duniter-v1-7-21-au-bloc-434742-a-l-entree-d-elenamavida/8544/14 "2021-06-27T19:38:23Z")

</div>

> [@gerard94](#):
>
> au fait, @elois, g1monit est lui aussi coincé sur ce bloc).

g1-monit n’a pas sa propre implémentation, il utilise Duniter pour calculer la distance. Aucune implémentation du calcul de distance n’est en cause, c’est un bug ailleurs qui fourni des données invalides en entrée, apparemment lié à la synchro.

---

<div class="post-metadata">

### Author: ![gerard94](https://forum.duniter.org/user_avatar/forum.duniter.org/gerard94/32/58_2.png) [@gerard94](https://forum.duniter.org/u/gerard94)
#### Post date: [27 June 2021 20:25 UTC](https://forum.duniter.org/t/blocage-wotwizard-et-monit-duniter-v1-7-21-au-bloc-434742-a-l-entree-d-elenamavida/8544/15 "2021-06-27T20:25:56Z")

</div>

> [@elois](#):
>
> c’est un bug ailleurs qui fourni des données invalides en entrée

Oui, cela paraît logique.
