- 03 Apr, 2020 18 commits
-
-
Steven Allen authored
Except deprecated warn calls
-
Adin Schmahmann authored
-
Aarsh Shah authored
* remove disjoint queries * remove globally queried check * removed dht rng field and mutex * removed the Disjoint option Co-authored-by: Adin Schmahmann <adin.schmahmann@gmail.com>
-
Adin Schmahmann authored
* feat(query): fully async implementation of Kademlia lookup. peers returned from the lookup are not guaranteed to be alive (i.e. we're only guaranteed to have dialed the closest beta peers to the target), but given stable and correct routing tables the expectation that most of the peers returned are alive is high. * feat(query): add wrapper lookup followup function to followup after the lookup is completed and ensure that the closest k returned peers from a lookup have been queried even for beta < k * refactor(query) modified the structure returned from lookups to be a useful subset of the full query state instead of the entire query state * feat(options): beta parameter exposed as the Resiliency parameter * feat(routing): do not mark the routing table as updated after a FindPeer query * feat(routing): FindPeer can return addresses even if not Connected as long as it was either recently connected (CanConnect) or was discovered during the lookup * feat(bootstrap): bootstrap logic now uses GetClosestPeers instead of FindPeer * refactor(dht): stopFn no longer takes any state * fix(test): changed GetClosestPeers test to only assume beta instead of k peers since that is now more appropriate given the query logic changes and that the routing tables in that test are bad, i.e. a ring network with arbitrary peerIDs Co-authored-by: Petar Maymounkov <petarm@gmail.com> Co-authored-by: Aarsh Shah <aarshkshah1992@gmail.com>
-
Adin Schmahmann authored
-
Adin Schmahmann authored
-
Aarsh Shah authored
* kpeerset refactoring * query code cleanup
-
Steven Allen authored
-
Steven Allen authored
1. Continue to best-effort provide, but still return an error when we fail to send provider records to the _best_ peers. 2. Continue returning the best peer's we've found in GetClosestPeers, but also return an error to indicate that we didn't find the closest ones. And fix the hang test.
-
Adin Schmahmann authored
-
Adin Schmahmann authored
-
Adin Schmahmann authored
-
Adin Schmahmann authored
-
Adin Schmahmann authored
-
Adin Schmahmann authored
-
Adin Schmahmann authored
-
Adin Schmahmann authored
fix Search/GetValue to be Kad compliant. Default quorum is now 0 which means do not abort the query early
-
Adin Schmahmann authored
-
- 13 Mar, 2020 1 commit
-
-
David Dias authored
* feat: Expose the ProviderManager through the IpfsDht struct * feat: expose providers prefix so that we do not have to hard code it in other places Co-authored-by: Aarsh Shah <aarshkshah1992@gmail.com>
-
- 19 Dec, 2019 3 commits
-
-
Adin Schmahmann authored
-
Adin Schmahmann authored
-
Adin Schmahmann authored
-
- 16 Dec, 2019 1 commit
-
-
Aarsh Shah authored
-
- 06 Dec, 2019 2 commits
-
-
Steven Allen authored
-
Steven Allen authored
fixes #274
-
- 11 Oct, 2019 2 commits
-
-
Aarsh Shah authored
-
aarshkshah1992 authored
-
- 04 Oct, 2019 1 commit
-
-
Raúl Kripalani authored
-
- 23 Jul, 2019 1 commit
-
-
Thomas Preindl authored
-
- 29 Jun, 2019 1 commit
-
-
Steven Allen authored
-
- 26 May, 2019 1 commit
-
-
Raúl Kripalani authored
-
- 26 Apr, 2019 1 commit
-
-
Steven Allen authored
When the routing table is empty, `Run` would fail but _not_ close the process (leaking some query goroutines). This patch fixes this in multiple places by: 1. Not starting queries with no peers. 2. Failing queries with no peers earlier.
-
- 12 Feb, 2019 2 commits
-
-
Raúl Kripalani authored
This reverts commit 7e68ac3c.
-
Adrian Lanzafame authored
-
- 03 Feb, 2019 1 commit
-
-
Matt Joiner authored
-
- 24 Jan, 2019 1 commit
-
-
Steven Allen authored
-
- 23 Jan, 2019 1 commit
-
-
Matt Joiner authored
-
- 12 Sep, 2018 1 commit
-
-
Kevin Atkinson authored
-
- 10 Aug, 2018 2 commits
-
-
Steven Allen authored
Also, de-duplicate some logic.
-
Steven Allen authored
-