Skip to content

Handle Reorgs #132

@willm30

Description

@willm30

What is a reorg?

https://river.com/learn/terms/r/reorganization
https://cointelegraph.com/explained/what-is-chain-reorganization-in-blockchain-technology
https://www.alchemy.com/overviews/what-is-a-reorg

How to handle

Here are my notes from a call I had with Jakub, Raul and Alex:

when listening to blocks, for each block that comes in, we need to confirm that it's parent hash is the previous block we processed, else it's a reorg.

If it's a reorg, we need to go back the last block we saw that is consistent with the reorg, and re-sync from that block

We need to keep a list of the last 500 blocks we have processed, each block containing:

  • block number
  • block hash

-- We also need to think about undoing state changes in the db for blocks that got reorged (and which may, thus, no longer exist on chain)

Recommendations

Speak to Alex to remind yourself of the details before starting work on this.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions