Commit graph

9013 commits

Author SHA1 Message Date
Jonathan Moody 82d7f81f41 Correct call to _aclose() in response to TransportNotConnected. 2022-05-20 17:23:39 -04:00
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 5c708e1c6f
Merge pull request #3611 from lbryio/fix_hub_url
tests: fix hub url
2022-05-20 18:19:39 -03:00
Victor Shyba 9436600267 tests: bump exchange rate manager test 2022-05-20 17:25:02 -03:00
Victor Shyba 4ab29c4d5f tests: fix hub url 2022-05-20 16:50:09 -03:00
Alex Grin 6944c4a7c4
Update LICENSE 2022-05-17 12:16:00 -04:00
Victor Shyba 2735484fae
Merge pull request #3576 from lbryio/trackers
Add support for announcing and querying LBRY streams over BEP15 (BitTorrent Trackers)
2022-05-13 17:56:20 -03:00
Victor Shyba 03b0d5e250 tracker client: extract default timeout and concurreny. Bump concurrency to 100 2022-05-11 21:13:30 -03:00
Victor Shyba 629812337b changes from review 2022-05-11 21:13:30 -03:00
Victor Shyba e54cc8850c return KademliaPeers directly into the queue instead of exposing Announcement abstraction 2022-05-11 21:13:30 -03:00
Victor Shyba 7cba51ca7d update tests, query with port 0, filter bad ports earlier, make unit tests more reliable 2022-05-11 21:13:30 -03:00
Victor Shyba 3dc145fe68 make peer list query trackers 2022-05-11 21:13:30 -03:00
Victor Shyba 7d560df9fd use same arg name as overriden datagram_received (linting) 2022-05-11 21:13:30 -03:00
Victor Shyba b3f894e480 add integration test for tracker discovery 2022-05-11 21:13:30 -03:00
Victor Shyba 235cc5dc05 results are indexed by ip, setdefault after resolve 2022-05-11 21:13:30 -03:00
Victor Shyba c276053301 move server implementation to tracker module 2022-05-11 21:13:30 -03:00
Victor Shyba 2e85e29ef1 peer id PREFIX is a constant 2022-05-11 21:13:30 -03:00
Victor Shyba 1169a02c8b make client server updatable from conf 2022-05-11 21:13:30 -03:00
Victor Shyba a7cea4082e tracker:log DNS errors as warning instead of trace 2022-05-11 21:13:30 -03:00
Victor Shyba 7e6ea97499 make peer id according to BEP20 2022-05-11 21:13:30 -03:00
Victor Shyba 3c46cc4fdd expire connection id quicker as some trackers have it set low 2022-05-11 21:13:30 -03:00
Victor Shyba 6e5c7a1927 use cache_concurrent to avoid requesting the same connection_id multiple times 2022-05-11 21:13:30 -03:00
Victor Shyba 4e09b35012 remove unused import and dead code 2022-05-11 21:13:30 -03:00
Victor Shyba 16a2023bbd stop tasks before removing transport 2022-05-11 21:13:30 -03:00
Victor Shyba 99fc7178c1 better way to batch announce + handle different intervals for different trackers 2022-05-11 21:13:30 -03:00
Victor Shyba d4aca89a48 handle multiple results from multiple trackers 2022-05-11 21:13:30 -03:00
Victor Shyba 2918d8c7b4 tracker component is running only if the task is alive 2022-05-11 21:13:30 -03:00
Victor Shyba 407c570f8b tests: lower timeout, add test with bad and good mixed 2022-05-11 21:13:30 -03:00
Victor Shyba e299a9c159 tests: multiple trackers, simple case 2022-05-11 21:13:30 -03:00
Victor Shyba cc4a578578 tests: add support for multiple trackers 2022-05-11 21:13:30 -03:00
Victor Shyba 0e4f1eae5b reduce timeout to 10, fix lints 2022-05-11 21:13:30 -03:00
Victor Shyba eccf0e6234 fix reusing result interval from failed expired attempt 2022-05-11 21:13:30 -03:00
Victor Shyba a3da041412 fix exceptions on shutdown, stop using cancel_tasks 2022-05-11 21:13:30 -03:00
Victor Shyba 2f1617eee4 less verbose on timeouts, dont count timeouts, fix stop 2022-05-11 21:13:30 -03:00
Victor Shyba 05124d41ae only log when really announcing, stop counting cached ones 2022-05-11 21:13:30 -03:00
Victor Shyba 42fd1c962e stop tracker tasks on shutdown 2022-05-11 21:13:30 -03:00
Victor Shyba 47e432b4bb make it less verbose, only log after all events are fired 2022-05-11 21:13:30 -03:00
Victor Shyba 61c99abcf1 avoid readding the same hash when tracker is busy with too many files 2022-05-11 21:13:30 -03:00
Victor Shyba 28fdd62945 move concurreny control to lower layer 2022-05-11 21:13:30 -03:00
Victor Shyba 3855db6c66 pause announcer for 1 minute each round 2022-05-11 21:13:30 -03:00
Victor Shyba 30acde0afc at most 10 announces concurrently 2022-05-11 21:13:30 -03:00
Victor Shyba 2d9c5742c7 cache results, save interval on tracker 2022-05-11 21:13:30 -03:00
Victor Shyba 43e50f7f04 fix subscribe_hash 2022-05-11 21:13:30 -03:00
Victor Shyba 888e9918a6 improve timeout handling 2022-05-11 21:13:30 -03:00
Victor Shyba 9e9a64d989 evented system for tracker announcements 2022-05-11 21:13:30 -03:00
Victor Shyba 7acaecaed2 managed_stream: remove unused imports 2022-05-11 21:13:30 -03:00
Victor Shyba 24eb189b7f skip component on test cli 2022-05-11 21:13:30 -03:00
Victor Shyba 2344aca146 fix component property 2022-05-11 21:13:30 -03:00
Victor Shyba 758f9deafe fix unit tests 2022-05-11 21:13:30 -03:00
Victor Shyba 7b425eb2ac add tracker announcer component 2022-05-11 21:13:30 -03:00