graphprotocol / graphprotocol/graph-node

Indexing completely fails if firehose goes down

Abierto
#4,115 6 comentarios 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

firehose indexer experience Stale
Lenguaje dominante
Rust
Estrellas
3.2k
Forks
1.1k
Merge medio
4 d 1 h
PR fusionados (30 d)
1

Descripción

Do you want to request a feature or report a bug?

Bug

What is the current behavior?

I'm running graph-node version 0.27.

My graph node is configured with both an RPC provider and a firehose source like so:

[chains.mainnet]
shard = "primary"
provider = [
    { label = "mainnet-default", transport = "rpc", url = "<url to rpc provider>", features = [] },
    { label = "firehose", details = { type = "firehose", url = "<url to firehose>"  }},
]

If I start graph-node and then kill my firehose instance, all indexing seems to stop, even though the rpc provider is still available.

If the current behavior is a bug, please provide the steps to reproduce and if possible a minimal demo of the problem.

  1. start a firehose grpc server
  2. start a graph node with a rpc and firehose provier
  3. deploy a subgraph and verify that graph node starts indexing
  4. kill the firehose server
  5. deploy a new subgraph
  6. see the new subgraph never starts indexing

What is the expected behavior?

I expect graph-node to gracefully fall back to the rpc provider when the firehose server isn't available (whether that's due to network issues or internal errors in the firehose server or anything else).

Guía de contribución

Abrir la guía de contribución

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Línea de trabajo

Reproduce el problema con la configuración [chains.mainnet] que contiene proveedores RPC y firehose: inicia la indexación, detén el servidor de firehose y despliega un nuevo subgraph. Inspecciona la selección de proveedores y el comportamiento durante el inicio de la indexación; después, verifica que el nuevo subgraph comience a indexar mediante RPC cuando firehose no esté disponible.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
grpc, rust
Área
backend, distributed-systems
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

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.