Portefeuilles manquants #1
Loading…
Reference in New Issue
No description provided.
Delete Branch "%!s(<nil>)"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Comme dit sur le forum, certains portefeuilles n'apparaissent pas dans la liste.
La source vient de le fonction
lookWalletUp
. La boucle est mal fichue et ne parcourt pas tous les blocs, loin de là. Voici une solution (le script tourne depuis 30 min et n'est pas encore au bout...) :Effectivement grosse coquille qui fausse totalement les statistiques depuis le début.
Je rectifie ça au plus vite.
Attention, il y a un awk qui filtré le contenu des unlocks. La liste des wqllets qui en résulte commencé par une espace et un double pipe. Ca fait planter la suite du script. Il est possible que des conditions de dépense non souhaitées (autres que SIG) se glissent dans la liste de allers.
Un filtrage par regex semble nécessaire.
La liste de wallets créée contient une première ligne vide et une deuxième avec "||" (vient de transactions avec conditions d'unlock composées).
on peut les filtrer avec une regex:
edit - Il reste des problèmes de parsing après ça. Je ne sais pas par où continuer.
J'ai commencé à faire autrement, en filtrant avec
grep -v
les lignes contenant des||
une fois isolés, et retirant les lignes vides avecawk 'NF'
.Mais ton regex est pas mal, d'autant qu'avec l'option
-o
de grep je peux ne sélectionner uniquement que les clés publiques des lignes, évitant alors de awk et tr pour sélectionner les clés.Je ne sais pas ce qui est le mieux.
Pour la regex il faut la faire matcher entre 42 et 44 pour qu'elle prenne toutes les clés.
J'ai fais pas mal de test avec quelques clés pour aller vite, là je refait un test complet mais ça va prendre plus de 4h (test lancé à 15h40) ...
Si j'ai le temps je vais reprendre une partie de ce que j'avais fait dans la branche solidity-rebuild, où j'exportait les données en json, pour faire en sorte de ne pas tout rescanner à chaque passe, mais juste les derniers blocs pas encore indexés.
J'ai push mes modifications.
J'en ai profité pour améliorer légèrement le code, notamment en virant le fichier tampon outFile qui ne servait à rien, remplacé par l'utilisation d'une variable.
J'ai aussi ajouté du cache pour le boucle loopWalletUp.