Anton Kaliaev
45750e1b29
fix race by sending signal instead of stopping pongTimer
7 years ago
Anton Kaliaev
26419fba28
refactor code plus add one more test
* extract stopPongTimer method
* TestMConnectionMultiplePings
7 years ago
Anton Kaliaev
ac0123d249
drain pongTimeoutCh and pongTimer's channel to prevent leaks
7 years ago
Anton Kaliaev
f4ff66de30
rewrite pong timer to use time.AfterFunc
7 years ago
Anton Kaliaev
747b73cb95
fix merge conflicts
7 years ago
Anton Kaliaev
161e100a24
close return channel when we're done
Benchmark results:
```
BenchmarkSwitchBroadcast-2 30000 71275 ns/op
--- BENCH: BenchmarkSwitchBroadcast-2
switch_test.go:339: success: 1, failure: 0
switch_test.go:339: success: 100, failure: 0
switch_test.go:339: success: 10000, failure: 0
switch_test.go:339: success: 30000, failure: 0
```
7 years ago
Anton Kaliaev
3ae738f453
increase timeouts
7 years ago
Anton Kaliaev
d14d4a2527
remove TryBroadcast
7 years ago
Anton Kaliaev
860da464df
remove weird concurrency testing
7 years ago
Anton Kaliaev
4e2000abfe
control order by sending msgs from one goroutine
7 years ago
Anton Kaliaev
5834a59816
read ping
7 years ago
Anton Kaliaev
b28b76ddf7
rename pingTimeout to pingInterval, pongTimer is now time.Timer
7 years ago
zbo14
91e4f4b786
ping/pong timeout in config
7 years ago
zbo14
9b554fb2c4
switch test modification
7 years ago
zbo14
f97ead4f5f
prep for merge
7 years ago
zbo14
5af22d6ee6
remove SwitchEventNewPeer, SwitchEventDonePeer
7 years ago
zbo14
1d16df6a92
add test, TrySend in broadcast
7 years ago
Anton Kaliaev
3f9aa8d8fa
document that msgBytes in p2p/connection change
7 years ago
Anton Kaliaev
d6d1f8512d
do not reset pingTimer
don't bother with this "only ping when we havent heard from them". lets
just always ping every peer from the sendRoutine every 10s no matter
what. if they dont pong within pongTimeout, disconnect :)
7 years ago
Anton Kaliaev
2b2c233977
write docs for Reactor interface
7 years ago
Ethan Buchman
7640e6a29f
add some p2p TODOs
7 years ago
Anton Kaliaev
11b68f1934
rewrite broadcastTxRoutine to use channels
https://play.golang.org/p/gN21yO9IRs3
```
func waitWithCancel(f func() *clist.CElement, ctx context.Context) *clist.CElement {
el := make(chan *clist.CElement, 1)
select {
case el <- f():
```
will just run f() blockingly, so this doesn't change much in terms of behavior.
7 years ago
Ethan Buchman
426379dc47
remove use of wire/nowriter
7 years ago
Ethan Buchman
baff4bd8cc
p2p/conn: better handling for some stop conditions
7 years ago
Ethan Buchman
b6eb275b22
p2p: fix break in double loop
7 years ago
Ethan Buchman
99034904f8
p2p: fix tests for required channels
7 years ago
Ethan Buchman
50129ad8ac
p2p: add Channels to NodeInfo and don't send for unknown channels
7 years ago
Ethan Buchman
8f3bd3f209
p2p: addrBook.Save() on DialPeersAsync
7 years ago
Ethan Buchman
85816877c6
config: fix addrbook path to go in config
7 years ago
Ethan Buchman
775bb85efb
p2p/pex: wait to connect to all peers in reactor test
7 years ago
Ethan Buchman
21ce5856b3
p2p: notes about ListenAddr
7 years ago
Ethan Buchman
3090b05eb4
p2p: use conn.Close when peer is nil
7 years ago
Ethan Buchman
44e967184a
p2p: tmconn->conn and types->p2p
7 years ago
Ethan Buchman
0d7d16005a
fixes
7 years ago
Ethan Buchman
5b5cbaa66a
p2p: use sub dirs
7 years ago
Ethan Buchman
03550c7076
wip addrbook
7 years ago
Ethan Buchman
930fde056a
p2p: add back lost func
7 years ago
Ethan Buchman
8d758560d8
p2p/trustmetric: non-deterministic test
7 years ago
Ethan Buchman
7b87cdaed8
p2p: seed disconnects after sending addrs
7 years ago
Ethan Buchman
c2f97e6454
p2p: seed mode fixes from rebase and review
7 years ago
Ethan Buchman
88eb3e7af0
some minor renames
7 years ago
caffix
949211a137
added a test for PEX reactor seed mode
7 years ago
Ethan Buchman
8171628ee5
make tests run faster
7 years ago
Ethan Buchman
fc7915ab4c
fixes from review
7 years ago
Zach Ramsay
26aaa283a9
p2p: remove deprecated Dockerfile
7 years ago
Zach
a29c67563c
Update p2p README, closes #1102
7 years ago
Ethan Buchman
17f7a9b510
improve seed dialing logic
7 years ago
Ethan Buchman
3df5fd21cd
better abuse handling in pex
7 years ago
Ethan Buchman
68237911ba
NetAddress.Same checks ID or DialString
7 years ago
Ethan Buchman
f9e4f6eb6b
reorder peer.go methods
7 years ago