Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Handling of forks #46

Open
pepyakin opened this issue Feb 20, 2024 · 1 comment
Open

Handling of forks #46

pepyakin opened this issue Feb 20, 2024 · 1 comment

Comments

@pepyakin
Copy link
Contributor

It's not clear how the forks are going to be handled. Given the following function:

go-da/da.go

Lines 16 to 17 in 011ba69

// GetIDs returns IDs of all Blobs located in DA at given height.
GetIDs(ctx context.Context, height uint64, namespace Namespace) ([]ID, error)

Two calls with the same height and namespace can return different IDs.

You can fit the definition by considering only finalized blocks for height. I would imagine it may be slightly annoying for Avail since it uses BABE & GRANDPA which is pretty fast most of the time. In Ethereum however finality time is way longer.

  1. Am I missing something?
  2. What is the suggested way to handle non-finalized chain heads?
  3. What's the game of plan of Avail, if known.
  4. Are there plans to change the API to accomodate non-single-slot-finality chains?
@nashqueue
Copy link
Member

nashqueue commented Feb 20, 2024

  1. No you are correct
  2. This interface assumes single slot finality or to wait until a height that is final
  3. You can follow the development in https://github.com/rollkit/avail-da
  4. You can write a proposal how to accommodate for non-single-slot-finality chains. :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: No status
Development

No branches or pull requests

2 participants