Commit graph

65 commits

Author SHA1 Message Date
Jack Robison
fdaaa0e678
changelog 2017-10-30 13:09:02 -04:00
Jack Robison
e89f3db31b
fix remaining length of close nodes list 2017-10-27 21:46:17 -04:00
Antonio Quartulli
673d1c4d43
Extend close nodes list by right amount
When a k-bucket does not contain enough close nodes, the
DHT will look into neighbouring k-buckets in order to entend
the list of returned nodes.

However, the list should not be extended beyond its maximum size.

Signed-off-by: Antonio Quartulli <antonio@mandelbit.com>
2017-10-26 02:21:24 +08:00
Jack Robison
628c46e5d9
catch id validation errors 2017-10-24 20:26:03 -04:00
Jack Robison
e2259fd8f7
fix dht rpc id length 2017-10-24 20:25:54 -04:00
Jack Robison
9479179259
avoid future contact id parsing bugs by passing the contact id as an arg 2017-10-24 19:17:17 -04:00
Jack Robison
0b771c16ba
fix lbry id for dead contact to replace in _IterativeFindHelper 2017-10-24 19:13:45 -04:00
Jack Robison
45adfc533b
fix id of new contact replacing a dead contact 2017-10-23 01:34:34 -04:00
Jack Robison
d23d4c1d73
fix lbryid length comparison 2017-10-23 01:23:04 -04:00
Jack Robison
e9fd8eb096
update tests and scripts 2017-10-10 13:55:31 -04:00
Jack Robison
9919fd06c6
uncomment error for store request where contact is not known 2017-10-10 13:29:54 -04:00
Jack Robison
c9515f8fb6
logging and whitespace 2017-10-10 13:29:29 -04:00
Jack Robison
5937ead17c
add Node.contacts helper property 2017-10-10 13:28:57 -04:00
Jack Robison
23ce278f8a
add removePeer to interface 2017-10-10 13:27:44 -04:00
Jack Robison
de1dc507ac
fix findCloseNodes when buckets aren't fully populated 2017-10-10 13:21:06 -04:00
Jack Robison
ab956d4a8e
use count parameter in findCloseNodes 2017-10-10 13:20:19 -04:00
Jack Robison
7c50e26bd7
include method and args in _sentMessages 2017-10-10 13:19:03 -04:00
Jack Robison
a942e6f3eb
fix args for ping() 2017-10-10 13:18:38 -04:00
Jack Robison
fe2d6bad1b
fix logging error for dht rpc methods with no args (ping) 2017-10-10 13:18:00 -04:00
Jack Robison
3096c89e37
don't wrap exceptions with Failure 2017-10-10 13:17:36 -04:00
Jack Robison
2a47385b62
add rpcAttempts and replacementCacheSize constants 2017-10-10 13:16:26 -04:00
Jack Robison
fcaca05a81
fix redundant lbryid 2017-10-10 13:15:25 -04:00
Jack Robison
46e31d5b45
getPeersForBlob inlinecallbacks refactor 2017-10-10 13:12:47 -04:00
Jack Robison
8e9f3c90a1
use looping call for Node.change_token to avoid hanging delayedCalls 2017-10-10 13:10:47 -04:00
Jack Robison
f1980f524e
fix raising remote exceptions 2017-10-10 13:09:25 -04:00
Jack Robison
4a567f7ab1
organize dht errors and interfaces 2017-10-10 13:08:22 -04:00
Jack Robison
422dbb549b
catch network-unreachable error in dht protocol 2017-07-14 14:29:12 -04:00
Jack Robison
9f15573742 add unique_contacts 2017-06-14 15:46:38 -04:00
Jack Robison
02475ff985 add dht bandwidth tracking 2017-05-30 11:41:54 -04:00
Jack Robison
8243349b20 use reactor.fireSystemEvent instead of reactor.stop 2017-05-01 21:09:24 -04:00
Alex Grintsvayg
cdf67de46c pylint type checking 2017-04-25 14:36:14 -04:00
Alex Grintsvayg
fd51d8ddf0 pylint 2017-04-25 14:36:14 -04:00
Jack Robison
d2f01a214d reduce logging level for noisy dht warning 2017-04-19 15:59:50 -04:00
Jack Robison
105fa0b947 pylint 2017-04-10 13:59:31 -04:00
Alex Grintsvayg
8db7c37fa7 exploring dht 2017-04-10 13:45:43 -04:00
Alex Grintsvayg
99e4f9b00b we dont always want to encode key here. bucket.keyInRange() already does it when necessary 2017-04-04 15:01:59 -04:00
Alex Grintsvayg
502e2227b5 fix KeyError bug in dht 2017-03-31 14:26:19 -04:00
Alex Grintsvayg
850f51140e formatting 2017-03-31 13:32:43 -04:00
jobevers
71123c0de1 add warning log on EWOULDBLOCK 2017-02-11 13:04:36 -06:00
Alex Grintsvayg
35b2e56bd4 silence "[Errno 11] Resource temporarily unavailable" error 2017-02-11 13:04:35 -06:00
Job Evers-Meltzer
8fe15f507b Better dht shutdown.
The old code relied on the timing of DelayedCalls
to see what had been called or not, but unfortunately
we don't have a real-time OS so the timing on DelayedCalls
can only be approximate. Changed to explicitly keep
track of which calls had been made.

This simplifies the shutdown logic drastically, and I believe
we can take out the reactor.iterate() now
2016-12-15 23:44:35 -06:00
Job Evers-Meltzer
84baa5e065 dht: refactor _msgTimeout 2016-12-15 18:58:16 -06:00
Job Evers-Meltzer
4f3b5cd802 Better logging on DHT errors
Timeout errors are common on the dht so log those
at debug, but other errors need to (potentially) recieve
more attention
2016-12-15 18:58:16 -06:00
Job Evers-Meltzer
250831a86a remove unused distance function from routingtable 2016-12-15 18:58:15 -06:00
Job Evers-Meltzer
323bccb0ae another distance optimization 2016-12-15 18:58:15 -06:00
Job Evers-Meltzer
0084d4684f Add distance optimization 2016-12-15 18:58:15 -06:00
Job Evers-Meltzer
740fad5cbe Refactor dht.node.iterativeFind
Move nested functions into a helper class.
Add new, smaller functions to increase readability
2016-12-15 18:58:15 -06:00
Job Evers-Meltzer
c30ea04959 Remove commented code
This is the result of running eradicate (https://github.com/myint/eradicate)
on the code and double-checking the changes.
2016-12-15 18:58:06 -06:00
Job Evers-Meltzer
7bce37a720 pylint: add check for missing-final-newline 2016-12-14 19:21:59 -06:00
Job Evers-Meltzer
14ac2bac39 pylint: fix trailing-whitespace 2016-12-14 19:21:59 -06:00