graphprotocol / graphprotocol/graph-node
Make using an illegal enum value a deterministic error
Personne n'a encore pris cette issue.
- Langage dominant
- Rust
- Étoiles
- 3.2k
- Forks
- 1.1k
- Merge moyen
- 4 j 1 h
- PR mergées (30 j)
- 1
Description
If an entity uses a value for an enum that is not part of the enum, the subgraph fails with a non-deterministic error along the lines of
Mar 31 23:48:52.214 ERRO Subgraph failed with non-deterministic error: Error while processing block stream for a subgraph: store error: invalid input value for enum sgd249350.contract_topic: "CAMANAGER", retry_delay_s: 1800, attempt: 8, sgd: 249350, subgraph_id: QmXW8msFbPZq2RNUHDk1RK1KBkRnj8R48HF3pkzhM2vq4t, component: SubgraphInstanceManager
which leads to attempts to retry the operation every 30 minutes. Those retries are futile - the subgraph has no chance of making progress.
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Piste de recherche
Commencez par le chemin de traitement block-stream du sous-graphe et par la gestion des erreurs du store autour de SubgraphInstanceManager ; l’issue ne fournit aucun chemin de fichier ou de test. Reproduisez une valeur d’enum en dehors de l’enum déclaré et vérifiez qu’elle est signalée comme un échec déterministe plutôt que de faire l’objet d’une nouvelle tentative toutes les 30 minutes.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- graphql, rust
- Domaine
- backend, databases
- Type d'issue
- Bug
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 35/100