- 22 Aug, 2021 1 commit
-
-
tavit ohanian authored
-
- 15 Apr, 2021 1 commit
-
-
Cory Schwartz authored
-
- 01 May, 2020 1 commit
-
-
Dirk McCormick authored
-
- 30 Apr, 2020 3 commits
-
-
Dirk McCormick authored
-
Dirk McCormick authored
-
Dirk McCormick authored
-
- 29 Apr, 2020 1 commit
-
-
Dirk McCormick authored
-
- 22 Apr, 2020 1 commit
-
-
Steven Allen authored
* feat: small optimizations * feat: move broadcast wantlist into the peermanager This deduplicates some state and allows us to do less book-keeping for broadcast wants. We should probably rename the PeerManager to the WantManager and rename the WantManager to something else. * fix: lint warnings
-
- 21 Apr, 2020 2 commits
-
-
Steven Allen authored
-
Steven Allen authored
* fix: minimize time holding wantlist lock Instead of holding the lock the entire time we prepare a message, hold the lock while we retrieve the wantlist entries, process the entries without the lock, retake the lock, then mark entries as sent. This means: 1. We never sort entries while holding the lock. 2. We allocate exactly three times while holding the lock (once per entry list). * fix: address code review
-
- 17 Apr, 2020 3 commits
-
-
Dirk McCormick authored
-
Dirk McCormick authored
-
Dirk McCormick authored
-
- 16 Apr, 2020 1 commit
-
-
Dirk McCormick authored
-
- 15 Apr, 2020 1 commit
-
-
Dirk McCormick authored
-
- 14 Apr, 2020 1 commit
-
-
Steven Allen authored
Instead of copying these slices, we can just reuse them.
-
- 13 Apr, 2020 4 commits
-
-
Dirk McCormick authored
-
Dirk McCormick authored
-
Dirk McCormick authored
-
Dirk McCormick authored
-
- 11 Apr, 2020 1 commit
-
-
Steven Allen authored
In case we're sending a _lot_ of wants: * Prioritize cancels. * Then targeted wants. * Finally broadcast wants.
-
- 10 Apr, 2020 1 commit
-
-
Dirk McCormick authored
-
- 26 Mar, 2020 1 commit
-
-
Steven Allen authored
-
- 19 Mar, 2020 3 commits
-
-
Dirk McCormick authored
-
Dirk McCormick authored
-
Dirk McCormick authored
-
- 17 Mar, 2020 2 commits
-
-
Steven Allen authored
-
Steven Allen authored
This removes one goroutine per peer which tends to be a pretty big deal. This brings go-ipfs down from 5.5 to 4.5 goroutines per peer.
-
- 16 Mar, 2020 1 commit
-
-
Dirk McCormick authored
-
- 13 Mar, 2020 1 commit
-
-
Dirk McCormick authored
-
- 10 Mar, 2020 1 commit
-
-
Dirk McCormick authored
-
- 06 Mar, 2020 2 commits
-
-
Dirk McCormick authored
-
Dirk McCormick authored
-
- 02 Mar, 2020 1 commit
-
-
dirkmc authored
* fix: ensure broadcast when peer becomes unavailable and all other peers sent DONT_HAVE for CID * fix: lint warnings * refactor: simplify session want sender DONT_HAVE list * fix: flaky test * test: add session exhausted wants test * docs: improve sessionWantSender processAvailability docs
-
- 13 Feb, 2020 2 commits
-
-
Dirk McCormick authored
-
Steven Allen authored
This: * Makes it easy to send immediately if we wait too long and/or if we have enough to send. * Is significantly more efficient than the debounce library as it doesn't spin off a bunch of "after" timers. fixes #245
-
- 12 Feb, 2020 1 commit
-
-
dirkmc authored
-
- 30 Jan, 2020 2 commits
-
-
Steven Allen authored
This makes reading the docs much easier as it's clear what's "private" and what's not. fixes #238
-
dirkmc authored
This commit extends the bitswap protocol with two additional wantlist properties: * WANT_HAVE/HAVE: Instead of asking for a block, a node can specify that they want to know if any peers "have" the block. * WANT_HAVE_NOT/HAVE_NOT: Instead of waiting for a timeout, a node can explicitly request to be told immediately if their peers don't currently have the given block. Additionally, nodes now tell their peers how much data they have queued to send them when sending messages. This allows peers to better distribute requests, keeping all peers busy but not overloaded. Changes in this PR are described in: https://github.com/ipfs/go-bitswap/issues/186
-
- 14 Aug, 2019 1 commit
-
-
Steven Allen authored
-