Dans ce cas-ci ce que je peux faire c’est laisser tomber la migration de la DB actuelle de Duniter et créer dès maintenant ure 2ème DB spécifique à GVA qu’on peuplera des transactions et sources uniquement pour commencer.
Je peux aussi migrer la DB SQLite des transactions, ce qui permettra de gérer la mempool des TX comme on veut (nécessaire pour que GVA puisse avoir des mutations pour les paiements), comme elle ne contient qu’une seule table ce sera rapide, je ne l’aie pas fait avant car je pensais que ce n’était pas prioritaire.
Concernant la compatibilité avec les lightning network tout est déjà bon sauf la contrainte txWindow qui reste a supprimé, je j’avais reportée car ça aurait nécessité d’ajouter une colonne dans receivedTime
dans la Db SQLite des txs, et comme pour moi les mempool n’était pas prioritaire, j’avais reporté.
Peut tu développer plus précisément le besoin ? Je ne pense pas à première vu qu’une notion d’arbre de merkel soit nécessaire. C’est pour la maj de l’index des sources coté pod Cesium+ ?
Le problème c’est que dans Duniter la BDD est embarquée et fortement couplée aux traitements métiers, c’est beaucoup plus délicat qu’une simple migration.
Oui le risque de régression est important, et les tests automatisés ne peuvent pas tout couvrir.
C’est pour cela que je préfère m’en charger, je suis celui qui connaît le mieux la codebase de Duniter après cgeek, je sais exactement comment il faut s’y prendre pour minimiser le risque de régression.
Maintenant que je connais plus précisément tes besoins @kimamila je peux tout à fait réorienter mes développements pour y répondre au plus vite, voic ma proposition :
- Je migre TxsDAL seul (contient la mempool tx + historique des tx écritent). PerMet de supprimer la contrainte txWindow ET de gérer les paiements via GVA
- Je dev un prototype de GVA avec une base dédiée pour l’indexation des sources.
Je crois qu’il faut qu’on communique davantage par rapport à ce chantier “GVA paiement”, il faudrait créer un sujet dédié
Concernant les Lightning Network est on bien d’accord que le seul boulot coté Duniter c’est de rendre le protocole DUBP compatible ? Je préférerais que les “pod Lightning Network” soit un logiciel à part