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

Allow claims outside the claimtrie #398

Open
5 tasks
BrannonKing opened this issue Jan 19, 2021 · 1 comment
Open
5 tasks

Allow claims outside the claimtrie #398

BrannonKing opened this issue Jan 19, 2021 · 1 comment

Comments

@BrannonKing
Copy link
Member

BrannonKing commented Jan 19, 2021

The computation of the claim trie is the bottleneck on sync, and it will soon be the overall bottleneck on each new block. Many LBRY streams presently use this mechanism but have no need for claim competition, as they are grouped by channel.

We need to enable a mechanism to allow these streams-in-a-channel to migrate to a non-competitive registration. The proposed method is that we will modify the trie to ignore claims for the root node (aka, claims with an empty name will no longer compete). We will no longer allow someone to competitively claim the root node; there's no way to view it presently anyhow.

Subtasks

  • update LBRY spec to, among other things, remove the requirement that URLs have a name component. Add examples of URLs with only a claim ID.
  • we need a hard-fork plan for this.
  • the hard-fork will need to pull all the claims in root at present out of the trie.
  • should the RPC methods to query claims by name return the entire list of no-names?
  • proof RPC methods will need to not support empty claim names
@lyoshenka lyoshenka changed the title need to allow non-trie claims Allow claims outside the claimtrie Jan 19, 2021
@lyoshenka
Copy link
Member

Which places in the code currently assume that a claim has a name? Will any of those be hard to change?

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

No branches or pull requests

2 participants