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

'self repairing' SBTs? #176

Closed
luizirber opened this issue Apr 17, 2017 · 1 comment
Closed

'self repairing' SBTs? #176

luizirber opened this issue Apr 17, 2017 · 1 comment
Labels

Comments

@luizirber
Copy link
Member

luizirber commented Apr 17, 2017

The most important things in a SBT are:

  • The leaves (since they contain the signatures)
  • The leaves positions in the tree
  • Internal nodes are not so important because we can reconstruct them if they are missing (and as long as all leaves are present).

Some notes:

  • When adding nodes to a storage, we can keep only the leaves if space is constrained (add an option to save, and check if a node is internal before saving)
  • Add functionality to allow internal nodes to rebuild themselves (find all the children leaves, rebuild other internal nodes along the way)
  • Split the nodes dict into internal and leaves? need a bit more of bookkeeping for this, but it is not strictly necessary.
  • For the IPFS storage it might be interesting to pin leaves when adding, but not internal nodes. This is also good because signatures are potentially shared more easily than internal nodes of the tree (think the signatures from RefSeq or SRA, for example).
  • Another usage is for 'increasing resolution': We use somewhat small Bloom Filters for internal nodes, you might want to use bigger ones to avoid false positives. Not a priority, but it kind of comes for free with the other stuff.
@luizirber
Copy link
Member Author

Fixed by #354

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant