-
Notifications
You must be signed in to change notification settings - Fork 9
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
Will provide content but not fetch content #14
Comments
Good questions. Can you point to the code that is doing that? Is this on go, js or both?
It was intended as the hypothesis was that we would use Relay to connect to that final destination node. Now that the relays are shutdown, the story is different. What I'm realizing is that JS IPFS does need to have its own dedicated infrastructure:
All of these pieces should be no more than an ipfs/libp2p node with some config set |
js-libp2p-delegated-content-routing/src/index.js Lines 86 to 92 in 69f1f94
Gotcha.
Got.
Need, need.
We'd not be able to force people using these modules to use a particular relay would we? I am +1 on "another relay for JS IPFS" though 😂
Got. Right?
👍 |
@alanshaw now that I see the code, what I suspect is that the believe (I say believe because I couldn't find it documented anywhere) is that the Bootstrappers would also be the relays, which is not the case. On the JS IPFS Infrastructure. As you say, we have multiple of those pieces, but currently it is a black box for users. We should document that in addition to what js-ipfs is capable, we also have deployed all of those for very specific reasons. |
refs ipfs/js-ipfs#2231 |
This is the case now, but if we have more nodes leveraging public delegates the problem should go away, because we should find the delegate nodes in the provider lookup instead of the origin nodes. The lack of symmetry is really a hack on not using a provide api. A clearer api might be to actually tell the delegate node to provide, and then it would fetch the content from us before it announced, rather than us just telling it to pull from us and then assume it's registering as a provider of that. |
This module had fetch methods added several years ago, please re-open if you're still having problems. |
/api/v0/refs
, which will slurp the content up from our node (assuming it is connected) and hence the delegate will start providing the content (until next GC).As part of the provide call, we tell the delegate to connect to a set of bootstrap nodes. Why is that? It's not doing what the comment says: "call swarm.connect on the delegated node to us, to ensure we are connected".
That's ok, but it's not symmetric with providing (is that intended?), and is not much use in the browser because we're unlikely to be able to connect to those providers.
I appreciate this module is meant for routing and not relay. I just wanted to get some clarification on these details and maybe suggest that they are documented on the README along with the API endpoints that are required to be open an available on the delegate.
@jacobheun @daviddias
The text was updated successfully, but these errors were encountered: