-
Notifications
You must be signed in to change notification settings - Fork 115
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
feat: NewDAGProvider to walk partial DAGs in offline mode #847
base: main
Are you sure you want to change the base?
Conversation
Thank you for submitting this PR!
Getting other community members to do a review would be great help too on complex PRs (you can ask in the chats/forums). If you are unsure about something, just leave us a comment.
We currently aim to provide initial feedback/triaging within two business days. Please keep an eye on any labelling actions, as these will indicate priorities and status of your contribution. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Some comments. Please add some testing as well.
You have utils to generate dags at github.com/ipfs/boxo/ipld/merkledag/test
. Verify outCh produces the expected Cids.
Hi @hsanjuan
|
hi @hsanjuan |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hello, I have fixed your code, which could be done much simpler. I think the work involved for this PR was too complex for you and I suggest you try easier issues first. When I read your code, I wonder if you are using an AI assistant as well to write it, or parts of it at least?
@gammazero Can you have a look, since reviewing would be mostly reviewing myself.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
- This and Add MFS Support to Reprovider Strategy kubo#10704 needs both be rebased due to buffered provider added in provider: add a buffered KeyChanFunc. #870
Signed-off-by: Abhinav Prakash <[email protected]>
Signed-off-by: Abhinav Prakash <[email protected]>
Signed-off-by: Abhinav Prakash <[email protected]>
The DAG provider creates a KeyChanFunc for all the CIDs found traversing the merkledag from given root. It can be used to provide specific DAGs (i.e. MFS) from their root.
This adds a SkipNotFound option to the FetcherConfig skips branch traversal when the blockservice returns ipld.NotFound. The result is that the fetcher is able to traverse dags in offline mode.
1ffbaa7
to
885778c
Compare
related to issue:kubo#10386 and PR:kubo#10704. Refer this
Problem
Solution