graphprotocol / graphprotocol/graph-node

Add deploymentTimestamp and firstTimeFullySyncedTimestamp to SubgraphIndexingStatus

Ouverte
#3,635 1 commentaire 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Stale
Langage dominant
Rust
Étoiles
3.2k
Forks
1.1k
Merge moyen
4 j 1 h
PR mergées (30 j)
1

Description

It would be great for subgraph developers to find out how long their subgraph took to fully sync for the first time. This could be enabled by changing the type SubgraphIndexingStatus here to the following shape:

type SubgraphIndexingStatus {
  subgraph: String!
  synced: Boolean!

  # Note that the health can be implied from fatalError and nonFatalErrors:
  # - If fatalError is non-null, then health is 'failed'.
  # - Else if nonFatalErrors is non-empty, then health is 'unhealthy'.
  # - Else health is 'healthy'.
  health: Health!

  "If the subgraph has failed, this is the error caused it"
  fatalError: SubgraphError
  "Sorted from first to last, limited to first 1000"
  nonFatalErrors: [SubgraphError!]!
  chains: [ChainIndexingStatus!]!
  entityCount: BigInt!
  node: String
  deploymentTimestamp: BigInt! # <- Added 
  firstTimeFullySyncedTimestamp: BigInt # <- Added, not required because it's empty during sync
}

Guide de contribution

Ouvrir le guide de contribution

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Piste de recherche

Commencez par la définition de SubgraphIndexingStatus dans server/index-node/src/schema.graphql et suivez l’endroit où ses valeurs sont assemblées. Vérifiez comment obtenir les heures du déploiement et de la première synchronisation complète, puis exposez les deux champs avec le comportement requis en matière d’obligation et de nullabilité. Le travail est terminé lorsque le schéma et ses réponses incluent des horodatages exacts et que le champ de première synchronisation est vide pendant la synchronisation.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
graphql
Domaine
api
Type d'issue
Fonctionnalité
Difficulté
3/5
Temps estimé
1-2 jours
Activité
À l'abandon
Clarté
Clairement spécifiée
Accessibilité débutants
48/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.