ĞDev indexer

Voilà ça devrait être mieux :slight_smile: :

3 Likes

Yes ça fonctionne avec Ğecko !
Je suppose qu’il doit être en train d’indexer, pour le moment il semble au début de la blockchain:


Oui je le vois grimper doucement.

Du coup si j’ai bien compris, tu as tout dockerisé et centralisé dans un docker-compose c’est ça ?

2 Likes

Yes, la liste des commandes pour tester localement :

git clone -b fix/2/prod-and-dev-docker https://git.duniter.org/manutopik/duniter-indexer.git
cd dev/duniter-indexer
cp .env.production .env
docker-compose -f docker-compose.yaml -f docker-compose.prod.yaml up -d

Ensuite toute la stack est disponible comme mentionnée dans mon message, mais à l’URL : http://localhost:3080.

2 Likes

Salut ! Je viens de voir tous tes commits @cgeek, trop bien, merci !
En fait, je voulais même virer fastify-hasura et passer en requêtes sql directement.
Je suis en vacances, pas du tout connecté depuis une semaine.
Je regarderai tout ça la semaine prochaine…

4 Likes

Yes ! Prends le temps, là je n’y touche plus. Ou sinon, ce sera uniquement sur du code pour indexer d’autres données donc rien de structurant.

A bientôt !

Bonjour !

L’indexer indexe-t-il les identités non encore membres et leurs certifications ? J’ai voulu suivre l’avancée des certifs de mon identité (désormais membre 5 certifs, merci :wink: ) mais je n’ai pas pu les voir.

J’ai reproduit avec un nouveau compte ‹ 5GbwieyfGRoviz5BDetNt7NdaTHwXfWrVegJbh24vKpb133u ›, qui a des extrinsics d’identité sur deux blocs (finalisés depuis bien longtemps):
688202 (invitation et première certification associée)
688228 (confirmation de l’identité)

Sur le grapgiql de cgeek, la réponse est vide.

// requête
{
  account(where: {id: {_eq: "5GbwieyfGRoviz5BDetNt7NdaTHwXfWrVegJbh24vKpb133u"}}) {
    identity {
      name
      created_at
      confirmed_at
    }
  }
  rec_certs: certification (
    where: {receiver_id: {_eq: "5GbwieyfGRoviz5BDetNt7NdaTHwXfWrVegJbh24vKpb133u"}}
  ) {
    issuer {
      id
      name
    }
  }
}

// réponse
{
  "data": {
    "account": [
      {
        "identity": null
      }
    ],
    "rec_certs": []
  }
}

j’aimerai contribuer à l’indexer, mais je n’arrive plus à lancer la stack localement :confused:

En suivant le README: Emmanuel Salomon / duniter-indexer · GitLab

une fois le docker compose up, le container duniter-indexer-graphql-engine-1 restart tout le temps avec pour dernier log:

duniter-indexer-graphql-engine-1  | time="2022-09-09T10:55:24Z" level=fatal msg="error applying metadata \n{\n  \"path\": \"$.args.metadata\",\n  \"error\": \"key \\\"tables\\\" not found\",\n  \"code\": \"parse-failed\"\n}"

Je reset pourtant les data local entre chaque lancement.
Je suis sur la branche fix/2/prod-and-dev-docker

Une idée ?

1 Like

Au passage l’indexer de cgeek semble désynchro depuis le 26 Aout.

1 Like

Tu suis le README de la branche master alors que tu es sur la branche fix/2/prod-and-dev-docker c’est pour ça.

2 Likes

@ManUtopiK donc tu mets à jour ton plugin fastify-hasura ou on le vire ? D’après les deux messages ci-dessus c’est pas clair. Est-ce que la solution de cgeek te parait bonne ?

On garde fastify-hasura, cgeek a une solution en tête pour faciliter le passage mode dev/prod

On garde car plus simple pour moi d’ajouter les nouveaux events avec mutation ainsi, on passera en SQL plus tard en opti…

J’ai pushé mon contournement ce jour : fix: fastify-hasura dependency (0c18b4b9) · Commits · Emmanuel Salomon / duniter-indexer · GitLab, branche fix/2/prod-and-dev-docker.

1 Like

La première version était dispo en juin 2022, mais tout a évolué un peu entre temps :

  • une nouvelle ĞDev
  • des modifications sur l’indexeur

Voici maintenant mes nouveaux endpoints:

Je vais pas tarder à publier peu de documentation pour en faire autant.
Merci @ManUtopiK et @poka pour le travail accompli, il ne manquait que quelques bricoles de docker et une documentation utilisateur.

4 Likes

J’ai installé l’indexer, j’ai déjà trouve quelques petites choses à améliorer. Pourrais-je avoir un accès pour faire une PR ?
Aussi, j’ai regardé les issues, sauf que ça manque de commentaires et donc je suis perdu quand à ce qu’il faut faire.

3 Likes

Voilà je viens de te créer un compte sur notre gitlab, tu as du recevoir un mail.

Pour les issues, je pense que le mieux est qu’on se fasse une visio pour discuter de tout ça plus naturellement. Ce weekend ou bien la semaine prochaine ?

@ManUtopiK tu sera avec nous ?

2 Likes

Super, merci beaucoup pour ta rapidité :+1:
Je suis dispo ce weekend, un peu moins la semaine, mais on peut se trouver un créneau suivant vos dispos.
Et merci de nous avoir ramené sur cette branche du forum, je l’avais cherchée en vain :smiley:

1 Like

Oui, je peux être là ! Pas forcément dispo ce week-end, mais je peux m’arranger.
J’essaye d’abord de finir le cms et le site. Je me remettrai sur l’indexer après…

3 Likes

tkt @ManUtopiK , concentre toi sur ce que tu fais, en attendant notre magicien du web préféré, on gère (enfin, on essai…). Au passage j’ai créé la variable gitlab est fait la chroot jail dans le container, ready to go.

@flodef dispo pour un jitsi demain à 14h par exemple ?

Ce sera là: jitsi.hadoly.fr/Axiom-Team

1 Like

J’y serai, à tout à l’heure :sunglasses:

Coucou,

Encore merci à @poka et ton temps consacré pour cette visio. J’ai appris plein de choses hyper intéressantes et motivantes…

Comme dit dans mon commit dans “f__k d__ker”, j’ai presque fini le typage. Il manque juste un fichier qui nécessite quelqu’un qui a conçu l’appli car impossible à déduire.
Sinon, j’ai rencontré plusieurs problèmes que je préfère poster ici car c’est plus rapide que rechercher (dans une botte de foin) la solution :

  • Dans la branche “f__k d__ker”, lorsque je lance pnpm dev:test (ou dev) j’ai une erreur “cannot connect with “flo” (PostgresError: password authentication failed for user “flo”)”, alors que dans la branche master, tout fonctionne parfaitement ! J’ai essayé quelques bidouilles sans succès.
  • Concernant l’événement Identity Removed, le seul paramètre retourné est index=6. C’est un peu léger pour que je puisse modifier la BDD. Surtout comparé aux autres événements déjà implémentés. C’est faisable, mais si on peut retourner plus d’info comme blockIndex, created_at, signer, ce serait top (ou alors ça les retourne déjà mais c’est invisible dans Polkatdot.js, faut que j’essaie demain).
  • Enfin, concernant gitlab, pourrait-on m’expliquer comment je peux mettre à jour ma branche depuis la branche principale ? Par exemple, après le commit de @poka, j’ai dû récupérer son code à la main … (j’ai recherché sur des forums, avec le mirroring, en vain). Sur Github, c’est proposé automatiquement.

Merci d’avance pour vos réponses :wink:

1 Like