Giovanni Petrantoni
ec5c0b867d
add floodPublish logic
2020-06-26 12:39:45 +09:00
Giovanni Petrantoni
cf51da00b2
take into account explicit direct peers in publish
2020-06-26 12:31:08 +09:00
Giovanni Petrantoni
84988a147c
standard setup fixes
2020-06-26 10:16:01 +09:00
Giovanni Petrantoni
98e4bb6769
add a way to pass parameters to gossip
2020-06-25 21:14:22 +09:00
Giovanni Petrantoni
08ed2a7974
prune by score (score is stub still)
2020-06-24 12:43:35 +09:00
Giovanni Petrantoni
cc3a0c29c0
validated always, even explicit peers
2020-06-24 12:19:59 +09:00
Giovanni Petrantoni
eea48f8bd5
fix encodePrune
2020-06-23 17:05:13 +09:00
Giovanni Petrantoni
7748b8c5c9
PeerInfo and ControlPrune protocols
2020-06-23 17:01:21 +09:00
Giovanni Petrantoni
99b982c21d
explicit peering part 3
2020-06-23 17:01:05 +09:00
Giovanni Petrantoni
f8292f7086
explicit peering part 2
2020-06-23 15:56:07 +09:00
Giovanni Petrantoni
b3aebb18e9
explicit peering part 1
2020-06-23 14:23:00 +09:00
Giovanni Petrantoni
9eb240fb7d
add 1.1 protocol to gossip
2020-06-23 11:49:14 +09:00
Giovanni Petrantoni
3568b073fd
allow multiple codecs per protocol (without breaking things)
2020-06-23 11:48:11 +09:00
Giovanni Petrantoni
ee6e545878
multistream select make sure to not report NA ( #235 )
...
* multistream select make sure to not report NA but rather empty string if all fails
Also re-enable tests
* avoid using bad constructs, make multistream.select flow crystal clear
2020-06-22 15:38:48 -06:00
Jacek Sieka
6331b04cb4
secp: requiresInit updates ( #237 )
...
* secp: requiresInit updates
* fix
2020-06-22 19:03:15 +02:00
Jacek Sieka
b99fd88deb
logging fixes
2020-06-21 11:14:19 +02:00
Giovanni Petrantoni
9429f2f5eb
Gossip heartbeat fixes ( #232 )
...
* refactor heartbeat management in gossipsub
* remove locking within heartbeat
2020-06-20 19:58:22 +09:00
Giovanni Petrantoni
7852c6dd0f
Noise and eth2/nbc fixes ( #226 )
...
* Remove noise padding payload (spec removed it)
* add log scope in secure
* avoid defect array out of range in switch secure when "na"
* improve identify traces
* wip noise fixes
* noise protobuf adjustments (trying)
* add more debugging messages/traces, improve their actual contents
* re-enable ID check in noise
* bump go daemon tag version
* bump go daemon tag version
* enable noise in daemonapi
* interop testing, (both secio and noise will be tested)
* azure cache bump (p2pd)
* CI changes
- Travis: use Go 1.14
- azure-pipelines.yml: big cleanup
- Azure: bump cache keys
- build 64-bit p2pd on 32-bit Windows
- install both Mingw-w64 architectures
* noise logging fixes
* alternate testing between noise and secio
* increase timeout to avoid VM errors in CI (multistream tests)
* refactor heartbeat management in gossipsub
* remove locking within heartbeat
* refactor heartbeat management in gossipsub
* remove locking within heartbeat
Co-authored-by: Ștefan Talpalaru <stefantalpalaru@yahoo.com>
2020-06-20 19:56:55 +09:00
Dmitriy Ryajov
7a1c1c2ea6
fixing some key not found exceptions ( #231 )
2020-06-19 15:19:07 -06:00
Dmitriy Ryajov
5b28e8c488
Cleanup lpstream, Connection and BufferStream ( #228 )
...
* count published messages
* don't call `switch.dial` in `subscribeToPeer`
* don't use delegation in connection
* move connection out to own file
* don't breakout on reset
* make sure to call close on secured conn
* add lpstream tracing
* don't breackdown by conn id
* fix import
* remove unused lable
* reset connection on exception
* add additional metrics for skipped messages
* check for nil in secure.close
2020-06-19 11:29:43 -06:00
Dmitriy Ryajov
719744f46a
Small fixes ( #230 )
...
* count published messages
* don't call `switch.dial` in `subscribeToPeer`
* make sure sending doesn't fail
* add `contains`
* review comment from prev pr
2020-06-19 11:29:25 -06:00
Dmitriy Ryajov
5f75e5adc6
don't use `switch.dial` in `subscribeToPeer` ( #227 )
...
* count published messages
* don't call `switch.dial` in `subscribeToPeer`
2020-06-17 20:12:32 -06:00
Dmitriy Ryajov
fe828d87d8
count published messages ( #224 )
2020-06-16 22:14:02 -06:00
Giovanni Petrantoni
224c2613e3
Remove noise padding payload (spec removed it) ( #222 )
2020-06-16 17:34:02 -06:00
Jacek Sieka
523eed65ce
metrics: use eth2 name for peers metric ( #223 )
2020-06-16 14:43:45 -06:00
Giovanni Petrantoni
0d81acafa8
Fix multistream select trace proto logging
2020-06-16 12:02:47 +09:00
Dmitriy Ryajov
9d9f793b4f
add metrics for sent messages by topic and peer ( #220 )
2020-06-15 17:39:03 -06:00
Dmitriy Ryajov
3c4c10d871
con't crash on nil ptr
2020-06-15 13:37:25 -06:00
Dmitriy Ryajov
7cb6c81159
Don't modify iterables while iterating them ( #219 )
...
* don't modify iterables while iterating
* assert handlers to properly close connections
2020-06-15 12:30:09 -06:00
Dmitriy Ryajov
9cd47fe816
add a logScope to make tracing less ugly ( #218 )
...
* add a logScope to make tracing less ugly
* don't crash on nil pointer
2020-06-15 12:10:41 -06:00
Dmitriy Ryajov
85b56d0b3a
Observedaddr ( #217 )
...
* send correct observerAddr
* run tests with info log level
* set observedaddr for channels
2020-06-12 19:56:17 -06:00
Oskar Thorén
f97e2deec7
Make methods in FloodSub, GossipSub public ( #216 )
...
Similar to https://github.com/status-im/nim-libp2p/pull/193 but doing it for all
methods to avoid this issue in PubSub in the future. Got hit by this behavior
again in rpcHandler and took me a while to figure out.
See https://github.com/oskarth/nim-private-method-skipping-case/ for minimal
repro
2020-06-12 17:54:12 -06:00
Dmitriy Ryajov
ac04ca6e31
make sure keys exist and more metrics ( #215 )
2020-06-11 20:20:58 -06:00
Dmitriy Ryajov
55a294a5c9
better pubsub metrics ( #214 )
2020-06-11 12:09:34 -06:00
Dmitriy Ryajov
6b196ad7b4
remove pubsub peer on disconnect ( #212 )
...
* remove pubsub peer on disconnect
* make sure lock is aquired
* add $
* count upgrades/dials/disconnects
2020-06-11 08:45:59 -06:00
Jacek Sieka
92579435b6
secio then noise ( #213 )
...
* secio then noise
much fewer peers on witti with noise first
* comment
2020-06-11 08:38:47 +02:00
Viktor Kirilov
1afec627c2
proper name for topics so that we can filter dynamically using chronicles ( #210 )
...
* proper name for topics so that we can filter dynamically using chronicles
* lowercase
2020-06-10 10:48:01 +02:00
Jacek Sieka
8d9e231a74
grab agentversion/protoversion ( #211 )
2020-06-09 12:42:52 -06:00
Dmitriy Ryajov
35ff99829e
close streams ( #208 )
...
* close streams
* don't warn on missing proto
2020-06-08 17:42:27 -06:00
Dmitriy Ryajov
ee281310c0
move trace log
2020-06-08 10:40:08 -06:00
Giovanni Petrantoni
82b4ed8f44
use declareCounter rather then gauge for certain metrics
2020-06-07 16:41:23 +09:00
Giovanni Petrantoni
a6a2a81711
Start adding some metrics to pubsub ( #192 )
...
* Start adding some metrics to pubsub
In order to visualize it's functionality
Still WIP
* more metrics
* add per topic metrics
* finishup with requested metrics
* add a metrisServer define to start local server
* PR fixes and cleanup
2020-06-07 09:15:21 +02:00
Dmitriy Ryajov
130c64f33a
don't return nil in dial ( #205 )
...
* dont return nil in dial
* don't crash on pubsub send
2020-06-05 18:17:05 -06:00
Zahary Karadjov
2aebae56c0
Don't rely on the side-effects from doAssert
2020-06-05 19:12:10 +03:00
Zahary Karadjov
828a80ec8f
Make the MultiAddress.init function used in NBC non-failing
2020-06-05 17:51:22 +03:00
Dmitriy Ryajov
5960d42c50
remove casts from ( #203 )
2020-06-02 20:21:11 -06:00
Dmitriy Ryajov
bb8bff2195
add sparse message propagation tests to gossipsub ( #202 )
...
* add sparce tests to gossipsub
* add send hooks
* remove `all`
2020-06-02 17:53:38 -06:00
Dmitriy Ryajov
285884c20c
Close peers ( #201 )
...
* wip
* exceptions and resource cleanup
* correct peerlifetime on disconnect
* emulate defered
* remove comment
2020-06-02 11:32:42 -06:00
Dmitriy Ryajov
c7298f34f4
additional comments
2020-06-02 09:10:27 -06:00
Dmitriy Ryajov
abbb50ae34
add leaks tests
2020-06-02 09:10:27 -06:00