I needed the network implementation in its own
package, because I'll be writing several services that
will plug into _it_ that shouldn't be part of the core net
package. and then there were dependency conflicts. yay.
mux + identify are good examples of what i mean.
refactor test peer creation to be deterministic and reliable
a bit of cleanup trying to figure out TestGetFailure
add test to verify deterministic peer creation
switch put RPC over to use getClosestPeers
rm 0xDEADC0DE
fix queries not searching peer if its not actually closer
used to return io.ErrShortBuffer, but this makes client
code much more complicated. we're already allocating
buffers when it's too large, so might as well just
keep it for later.
@maybebtc the error was not inside mocknet. the error is in
assuming the peers / nets returned follow the same order.
See:
- https://github.com/jbenet/go-ipfs/blob/master/epictest/addcat_test.go#L100
- https://gist.github.com/jbenet/a39bb9d2f16532a03bb8
if you want the results to be sorted by peer.ID before they
are returned, we can totally do that, but that's probably an
unsafe assumption to make in general-- if you do your
initialization async, the number of networks or peers may have
changed between the two calls. LMK what you prefer.
(thank you golang map chaosmonkey ;)
pprof cannot be used reliably on OS X. This provides two make tasks to
collect and analyze profiling data.
To run profiling in a dockerized linux environment...
```
make // or `make collect`
```
To analyze results on host machine...
```
make analyze
```
@jbenet @whyrusleeping
@whyrusleeping @jbenet this is a WIP with the DHT.
wip
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
Conflicts:
epictest/addcat_test.go
exchange/bitswap/testnet/peernet.go
exchange/bitswap/testutils.go
routing/mock/centralized_server.go
routing/mock/centralized_test.go
routing/mock/interface.go
fix(routing/mock) fill in function definition