Jonathan Moody
b036961954
Tighten up IterativeFinder logic to respect max_records better, and wait after task cancel().
...
Also make IterativeFinder a proper AsyncGenerator. This gives it an offically recognized aclose() method and could help with clean finalization.
2022-05-20 17:23:39 -04:00
Victor Shyba
f05943ff79
implement announcer as a consumer task on gather
2022-03-02 13:00:34 -03:00
Victor Shyba
7ded8a1333
make active an explicit ordered dict
2022-03-02 13:00:34 -03:00
Victor Shyba
c2478d4add
remove unused search rounds
2022-03-02 13:00:34 -03:00
Victor Shyba
8b1009161a
better representation of kademliapeer on debug logs
2022-03-02 13:00:34 -03:00
Victor Shyba
868a620e91
add a way to wait announcements to finish so tests are reliable
2022-03-02 13:00:34 -03:00
Victor Shyba
612dbcb2f3
allow running some extra probes for k replacements
2022-03-02 13:00:34 -03:00
Victor Shyba
b3614d965d
remove all references to bottoming out
2022-03-02 13:00:34 -03:00
Victor Shyba
5d7137255e
no stop condition, let it exhaust
2022-03-02 13:00:34 -03:00
Victor Shyba
6ff867ef55
bottoming out is now warning and no results for peer search
2022-03-02 13:00:34 -03:00
Victor Shyba
c14915df29
don't probe peers too far from the top closest
2022-03-02 13:00:34 -03:00
Victor Shyba
7d4966e2ae
use a dict for the active queue
2022-03-02 13:00:34 -03:00
Victor Shyba
3876e0317d
log bottom out of peer search in debug, show short key id for find value
2022-03-02 13:00:34 -03:00
Victor Shyba
0b2b10f759
bump bottom out limit of peer search so people can use 100 concurrent announcers
2022-03-02 13:00:34 -03:00
Victor Shyba
9a79b33664
wait until k peers are ready. do not double add peers
2022-03-02 13:00:34 -03:00
Victor Shyba
af1a6edd15
only return good (contacted) peers
2022-03-02 13:00:34 -03:00
Victor Shyba
b78929f4d5
reset closest peer on failure
2022-03-02 13:00:34 -03:00
Victor Shyba
fb6e342043
add peers from shortlist regardless, but check from other nodes
2022-03-02 13:00:34 -03:00
Victor Shyba
511e57c231
fix distance sorting and improve logging
2022-03-02 13:00:34 -03:00
Victor Shyba
d762d675c4
closest peer is only ready when it was contacted and isn't known to be bad
2022-03-02 13:00:34 -03:00
Victor Shyba
3fdadee87c
dont probe and ignore bad peers
2022-03-02 13:00:34 -03:00
Victor Shyba
1aa4d9d585
simplify, genaralize to any size and fix tests
2022-02-28 13:06:51 -03:00
Victor Shyba
ca65c1ebc5
replace duplicated code
2022-02-28 13:06:51 -03:00
Victor Shyba
c0f512ace7
bump DHT peer manager cache to 16384
2022-02-02 16:54:42 -03:00
Victor Shyba
c9d637b4da
add gauge for queue size
2022-02-02 11:56:42 -03:00
Victor Shyba
ae3e8fadf5
count announcements and how many peers we were able to announce to
2022-02-02 11:56:42 -03:00
Victor Shyba
0618053bd4
remove request_flight metric
2022-01-12 12:41:04 -03:00
Victor Shyba
fd9dcbf9a8
add granular metric for stored blob prefix, for network announcements calculation
2022-01-12 12:39:23 -03:00
Victor Shyba
beb8583436
change colliding bits metric to gauge
2022-01-12 12:39:23 -03:00
Victor Shyba
b44e2c0b38
count bit collisions between 8 and 16
2022-01-12 12:39:23 -03:00
Victor Shyba
06e94640b5
add counter for peers with colliding bytes
2022-01-12 12:39:23 -03:00
Victor Shyba
ff36bdc802
add requests in flight and error
2022-01-12 12:39:23 -03:00
Victor Shyba
46f576de46
add request received
2022-01-12 12:39:23 -03:00
Victor Shyba
7b09c34fce
add request_sent and request_time metric on dht
2022-01-12 12:39:23 -03:00
Victor Shyba
a22f50aa84
add storing_peers and peer_manager_keys
2022-01-12 12:39:23 -03:00
Victor Shyba
2d9130b4e0
prometheus: move blobs_stored and peers to SDK. add buckets_in_routing_table
2022-01-12 12:39:23 -03:00
Victor Shyba
a8523996a9
extract cache values, increase peer cache to 2048
2022-01-07 12:58:52 -03:00
Victor Shyba
f586de2bbe
DHT bugfix: failures tracking should be bound to 2048 LRU cache size
2022-01-07 12:46:00 -03:00
Victor Shyba
54d6fb9da4
do not limit DHT results by K, respect max_results
2021-12-09 14:34:55 -03:00
Victor Shyba
3d5c9cc1c2
clarify DHT debug logging on key and operation
2021-12-09 14:32:30 -03:00
Victor Shyba
fa2ad88cc4
clear cache on test assertions
2021-11-09 14:27:06 -05:00
Victor Shyba
1ff914a6f4
download from stored announcements and dont reannounce
2021-11-09 14:27:06 -05:00
Victor Shyba
510b44ca92
move more logic out of the downloader component
2021-11-09 14:27:06 -05:00
Victor Shyba
13667df374
download from DHT
2021-11-09 14:27:06 -05:00
Victor Shyba
c42b76dcb8
dont lose results on duplicates, just warn
2021-11-08 10:50:47 -05:00
Cristian Vicas
42c4fc7557
Bug [ #2070 ] where blob_get RPC timed out.
...
Both stream.downloader and blob_exchange.downloader paths are adding the fixed_peers list to the DHT node.
Tested jsonrpc_blob_get daemon call.
Bug [#2070 ] where blob_get RPC timed out.
Both stream.downloader and blob_exchange.downloader paths are adding the fixed_peers list to the DHT node.
Tested jsonrpc_blob_get daemon call.
2021-11-08 10:49:48 -05:00
Victor Shyba
763ca69a73
dht: use bytes hex/fromhex instead of binascii
2021-09-30 13:26:33 -03:00
Victor Shyba
71a19191f8
add dht seed node script
2021-09-30 13:26:33 -03:00
Lex Berezhny
dc1d9e1c84
upgrade pylint and fix lint errors
2021-08-20 22:36:35 -04:00
Victor Shyba
0b52d2cc15
log invalid port as a warning instead of an exception
2021-08-03 15:29:52 -03:00