-
-
Notifications
You must be signed in to change notification settings - Fork 3k
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
wire contexts into bitswap requests more deeply #1986
Conversation
req := &blockRequest{ | ||
keys: keys, | ||
ctx: ctx, | ||
// NB: Optimization. Assumes that providers of key[0] are likely to |
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.
Yeah, I thought broadcasting every blocks independently is too granular considering the bandwidth cost & rtt. This reduces dup subsequent blocks download as well (except that within the first 10s, there will be duplicated download chains)?
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.
I think this should be separated out into another PR.
Tested, the result is wantlist doesn't get cleared after client exit.
|
I tried catching the The msg only gets printed when the daemon exits, but not when the client exits. |
@rht, thanks for investigating. I dont think the context from the api request is being passed down to the getblocks requst properly. I need to look at that wiring a little more closely. |
it looks like closenotify isnt working for some reason... not sure why |
Not sure the reason with why another transport is created just to cancel the client request here. When I replaced it with the transport created previously, I was able to C-c the client once. Currently it has to be done twice. Is this a bug or feature? |
test: I put a 1s timeout on the http handler that auto-cancel the connection. The wantlist still doesn't get gc-ed. |
this is waiting until we sort out the CloseNotify nonsense. |
I tried simulating the closenotify, but in this PR, the wantlist still doesn't get gc-ed. |
would be awesome to get this figured out-- am sure lots of traffic happens because of these lingering ctxs |
68b9745
to
b0a8591
Compare
fe40df8
to
7f04b1b
Compare
cf514d8
to
3224ae0
Compare
License: MIT Signed-off-by: Richard Littauer <[email protected]>
Added quotes around block put command
License: MIT Signed-off-by: rht <[email protected]>
License: MIT Signed-off-by: rht <[email protected]>
License: MIT Signed-off-by: rht <[email protected]>
License: MIT Signed-off-by: rht <[email protected]>
Also fixes some grammar in pings. See #2265 (comment) License: MIT Signed-off-by: Richard Littauer <[email protected]>
License: MIT Signed-off-by: Jeromy <[email protected]>
License: MIT Signed-off-by: Jeromy <[email protected]>
License: MIT Signed-off-by: Jeromy <[email protected]>
License: MIT Signed-off-by: Stephen Whitmore <[email protected]>
License: MIT Signed-off-by: Stephen Whitmore <[email protected]>
License: MIT Signed-off-by: Stephen Whitmore <[email protected]>
License: MIT Signed-off-by: Stephen Whitmore <[email protected]>
Prevents 'ipfs name publish' when /ipns is mounted.
makes 'ipfs files write' usage docs clearer
It is not useful. See ipfs-inactive/http-api-spec#41 (comment) License: MIT Signed-off-by: Richard Littauer <[email protected]>
License: MIT Signed-off-by: Richard Littauer <[email protected]>
License: MIT Signed-off-by: Richard Littauer <[email protected]>
Remove period from dns text examples
License: MIT Signed-off-by: Jeromy <[email protected]>
See ipfs-inactive/http-api-spec#41 (comment) License: MIT Signed-off-by: Richard Littauer <[email protected]>
Change language for files read slightly
Added an `as` to ensure good English
Makes install from source instructions clearer.
Add default to dns resolve
More robust version checking
License: MIT Signed-off-by: Jeromy <[email protected]>
License: MIT Signed-off-by: Jeromy <[email protected]>
assert that you must build from inside your gopath
My bad. Introduced in #2366 License: MIT Signed-off-by: Richard Littauer <[email protected]>
Fix spelling error
introduce a low memory flag
License: MIT Signed-off-by: Jeromy <[email protected]>
7f04b1b
to
11685f0
Compare
This should address the issue of wantlist entries persisting in the wantlist and not being cancelled when things like 'ipfs get' are killed early
License: MIT
Signed-off-by: Jeromy [email protected]