Juan Batiz-Benet
989d3d4ce5
dht/test skip bootstrap test when short
2014-12-24 05:39:48 -08:00
Juan Batiz-Benet
60c869d401
dht/test: providers test id compare
2014-12-24 04:23:15 -08:00
Juan Batiz-Benet
923c082d66
dht: cleaned up dht_test.
...
TestProversMany still fails
2014-12-24 03:48:02 -08:00
Juan Batiz-Benet
57510d2fec
dht/dht_test: bootstrap synchronously. fares better.
2014-12-24 03:46:45 -08:00
Juan Batiz-Benet
618097d80e
dht/query: log when dialing a closerpeer
2014-12-24 03:45:20 -08:00
Juan Batiz-Benet
8adda0fffc
dht: bootstrap query constants
2014-12-24 03:44:03 -08:00
Juan Batiz-Benet
e630ca6078
dht: removing extra newlines
2014-12-24 03:42:43 -08:00
Juan Batiz-Benet
b5cbc8b6fa
dht_test: better bootstrapping logging
2014-12-24 03:41:13 -08:00
Juan Batiz-Benet
ef0c25f463
dht bootstrap test: rounds. do nothing
...
odd behavior: only one dht (the last one) is seeing
changes to its routing table.
2014-12-24 03:24:52 -08:00
Juan Batiz-Benet
ccf6f79aa0
respect don contexteone
2014-12-24 03:24:28 -08:00
Juan Batiz-Benet
f8c523fc3b
bootstrap test
2014-12-24 02:20:11 -08:00
Juan Batiz-Benet
cdb461d2a9
dht: update on every received message
...
i made a separate function because we may want to update our
routing table based on "closer peers". maybe not-- these could
all be lies.
2014-12-24 02:20:11 -08:00
Juan Batiz-Benet
61cdef3570
dht/query: fix important panic
...
Withe queries (particularly providers), it was possible to
exit the query runner's Run BEFORE all its children were done,
because the runner itself only listened to the context. This
introduced the possibility of a panic (you can go check it
out by running the TestProvidersMany test on dht_test in commits
before this one). Thankfully, ctxgroup saved the day with
almost _zero_ changes to the sync flow, and now we have the
guarantee that the query runner will only exit if all its
children are done. ❤️
Conflicts:
routing/dht/query.go
2014-12-24 02:13:38 -08:00
Juan Batiz-Benet
7d7e051101
dht bootstrap err check fix + logging
2014-12-24 02:10:52 -08:00
Juan Batiz-Benet
596602f37f
routing table: better printing (see bkts)
2014-12-24 02:09:06 -08:00
Juan Batiz-Benet
ea2706c698
dht bugfix: unlock on print
2014-12-24 01:50:00 -08:00
Juan Batiz-Benet
04f9805d5d
dht_test large providers test
2014-12-24 01:49:55 -08:00
Juan Batiz-Benet
a7eb52a7fa
dht: helpful debugging for no closer peers
2014-12-23 09:03:26 -08:00
Juan Batiz-Benet
7952d95bbf
added bootstrap logging
2014-12-23 08:48:58 -08:00
Juan Batiz-Benet
2c95cb5413
dht: bit nicer logging
2014-12-23 08:46:30 -08:00
Juan Batiz-Benet
c2b21e473d
routing/mock test: kill leaked goroutine
2014-12-23 08:38:19 -08:00
Juan Batiz-Benet
c84a714b16
peer change: peer.Peer -> peer.ID
...
this is a major refactor of the entire codebase
it changes the monolithic peer.Peer into using
a peer.ID and a peer.Peerstore.
Other changes:
- removed handshake3.
- testutil vastly simplified peer
- secio bugfix + debugging logs
- testutil: RandKeyPair
- backpressure bugfix: w.o.w.
- peer: added hex enc/dec
- peer: added a PeerInfo struct
PeerInfo is a small struct used to pass around a peer with
a set of addresses and keys. This is not meant to be a
complete view of the system, but rather to model updates to
the peerstore. It is used by things like the routing system.
- updated peer/queue + peerset
- latency metrics
- testutil: use crand for PeerID gen
RandPeerID generates random "valid" peer IDs. it does not
NEED to generate keys because it is as if we lost the key
right away. fine to read some randomness and hash it. to
generate proper keys and an ID, use:
sk, pk, _ := testutil.RandKeyPair()
id, _ := peer.IDFromPublicKey(pk)
Also added RandPeerIDFatal helper
- removed old spipe
- updated seccat
- core: cleanup initIdentity
- removed old getFromPeerList
2014-12-23 08:33:32 -08:00
Jeromy
9328fbaf81
clean peerset constructor names
2014-12-17 23:44:46 -08:00
Jeromy
69dd260236
refactor peerSet
2014-12-17 23:44:42 -08:00
Jeromy
2240272d85
change Provide RPC to not wait for an ACK, improves performance of 'Add' operations
2014-12-17 23:44:41 -08:00
Jeromy
cfbe92bc8b
rewrite sendWantlistToProviders
2014-12-17 23:44:40 -08:00
Juan Batiz-Benet
de6eef9178
mv net/mock2 -> net/mock
2014-12-17 23:25:40 -08:00
Juan Batiz-Benet
dd33f6d9dc
transition dht to mock2
2014-12-17 23:25:40 -08:00
Juan Batiz-Benet
ba323c3e48
make vendor
2014-12-17 23:25:38 -08:00
Juan Batiz-Benet
bc2d35fd4d
Lots of fixes. DHT tests pass
2014-12-17 23:25:38 -08:00
Juan Batiz-Benet
41751b4938
Integrated new network into ipfs
2014-12-16 14:47:29 -08:00
Brian Tiger Chow
34b11a3b07
fix: routing mock accuracy
...
routing interface doesn't wait for value to appear in network, but value
doesn't appear in network until time as passed
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-12-15 20:46:43 -08:00
Brian Tiger Chow
3ecdec985f
refactor(mockrouting) misc
...
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-12-13 05:30:33 -08:00
Brian Tiger Chow
8e0c8a7a7e
refactor(mdag, bserv, bs) mocks, etc.
...
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-12-13 05:17:16 -08:00
Jeromy
8cdf566865
remove multilayered routing table from the DHT (for now)
2014-12-11 06:08:53 +00:00
Jeromy
9e14bcfe2d
changes from PR
2014-12-11 05:42:05 +00:00
Jeromy
2d94b78480
rewrite FindProvidersAsync
2014-12-11 05:09:03 +00:00
Juan Batiz-Benet
26a44fcc06
dht: comment for asyncQueryBuffer
2014-12-08 21:55:51 -08:00
Juan Batiz-Benet
e0f11dff24
dht: FindPeersConnectedToPeer
2014-12-08 20:52:46 -08:00
Juan Batiz-Benet
d06bb6d826
dht: update to use net.LocalPeer
2014-12-08 20:52:45 -08:00
Juan Batiz-Benet
ff1e672d5a
dht/pb: changed PeersToPBPeers to set ConnectionType
...
Uses an inet.Dialer
2014-12-08 20:52:45 -08:00
Juan Batiz-Benet
94f04c7fcc
net: add Connectedness var.
2014-12-08 20:52:45 -08:00
Juan Batiz-Benet
26e7656164
dht tests: dont introduce nil multiaddr
...
this is the type of assumption we shouldn't violate.
2014-12-08 20:52:45 -08:00
Juan Batiz-Benet
c5c0e7e8f3
dht: changed msgs, include multiple addrs + conn type
...
See https://github.com/jbenet/go-ipfs/issues/153#issuecomment-63350535
2014-12-08 20:52:34 -08:00
Juan Batiz-Benet
a1237733c2
dht: linting
2014-12-08 19:28:05 -08:00
Brian Tiger Chow
b799ddef58
refactor(dht) remove extraneous return value
...
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-12-08 16:28:22 -08:00
Brian Tiger Chow
c67286774c
silence verbose output
...
for higher SnR at IPFS_LOGGING=info
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-12-08 15:07:33 -08:00
Brian Tiger Chow
74eb03231d
fix(core, peer) helpers to testutil, err handling
...
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-12-08 14:32:52 -08:00
Brian Tiger Chow
d77c4bb5e0
refactor(peer): create peer through peerstore
...
for safety!
use mockpeer.WithID methods to create peers in tests
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-12-08 02:10:42 -08:00
Brian Tiger Chow
73a89e161d
refactor(peerstore) s/Get/FindOrCreate
...
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-12-08 02:10:42 -08:00