graphprotocol / graphprotocol/graph-node
Make using an illegal enum value a deterministic error
Nadie ha tomado este issue todavía.
- Lenguaje dominante
- Rust
- Estrellas
- 3.2k
- Forks
- 1.1k
- Merge medio
- 4 d 1 h
- PR fusionados (30 d)
- 1
Descripción
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.
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Línea de trabajo
Comienza en la ruta de procesamiento de block-stream del subgrafo y en el manejo de errores del store alrededor de SubgraphInstanceManager; el issue no proporciona ninguna ruta de archivo ni de prueba. Reproduce un valor de enum fuera del enum declarado y verifica que se informe como un fallo determinista en lugar de reintentarse cada 30 minutos.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- graphql, rust
- Área
- backend, databases
- Tipo de issue
- Error
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Estado de actividad
- Estancado
- Claridad
- Bastante claro
- Aptitud para principiantes
- 35/100