graphprotocol / graphprotocol/graph-node

graphman commands for analyzing and fixing bad block issues

Offen
#3,145 1 Kommentar 0 Reaktionen 1 zugewiesene Person Auf GitHub ansehen

@tilacog arbeitet bereits daran.

Seit 11.1.2022.

area/graphman enhancement
Vorherrschende Sprache
Rust
Sterne
3.2k
Forks
1.1k
Ø Merge
4 T. 1 Std.
Gemergte PRs (30 T.)
1

Beschreibung

Sometimes, we're missing transactions from blocks returned from Ethereum nodes.

Usually, we then have to manually

  • compare the block in our database with the block returned from the Ethereum node,
  • identify what subgraphs are or might be affected,
  • roll them back or restart them.

This is tedious. It would be great to have graphman commands that do the following:

  1. Given a network and block number or hash
    • Compare our cached block with the block on this network, identify all contract addresses of mismatching data in the block
    • Print a diff of the block
    • Print lists of all subgraphs that might be affected:
      • All subgraphs for this network that failed on that block
      • All subgraphs for this network that have
        • data sources for one of the contract addresses included in the mismatching block data
        • data sources with no contract address
  2. Fix a block by refetching it from the network
  3. Rewind / restart a list of subgraph deployments, if we don't have commands for this yet

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Bewertung

Dieses Issue wurde noch nicht bewertet.

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.