Victor Shyba
562d23df11
remove nodes that went ignored during iteration
2018-07-16 17:22:46 -03:00
Jack Robison
2c13c04f86
Bump version 0.20.3 --> 0.20.4rc1
...
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-07-13 12:02:50 -04:00
Victor Shyba
5c7d279104
prune failures during is_ignored calls
2018-07-12 18:24:59 -03:00
Victor Shyba
cfe8e17223
filter out the bad node in results instead of punishing the node we trusted to contact
2018-07-12 18:24:18 -03:00
Victor Shyba
c589e89bf0
greedy search with exclude filtering
2018-07-05 22:03:52 -03:00
Lex Berezhny
284264962d
reflector test fix
2018-07-05 19:51:15 -04:00
Lex Berezhny
6952c2c07e
Revert "refactor lbrynet-daemon into modular components" ( #1286 )
...
* Revert "fix reflector test"
This reverts commit 6a15b51ac3
.
* Revert "refactor lbrynet-daemon into modular components (#1164 )"
This reverts commit 75a6ff269e
.
2018-07-05 19:05:48 -04:00
Jack Robison
6a15b51ac3
fix reflector test
2018-07-05 15:40:13 -04:00
Jack Robison
75a6ff269e
refactor lbrynet-daemon into modular components ( #1164 )
...
* add daemon Component and ComponentManager classes
* convert directory and SQLiteStorage setup to be a Component
* support callbacks to component setups
* Fixed typo in ComponentManager
* convert wallet to be Component
* Use storage from session.
* Remove create_session internal function and PEP8
* Starting to convert session to its own component. Removed ref to `self.storage` from Daemon.py
* Making DHT component(broken)
* Refactored classes to reduce redundancy in getting config setting
* DHT is now it's own component
* Fixed `test_streamify` test
* Fixed regression caused by removing `peer_manager` from session
* refactor ComponentManager and Component to use instance instead of class methods
* Hash announcer, file manager, stream identifier components
* Query Handler and server components
* Reflector Component
* Fixed test_streamify(well Jack did, but ¯\_(ツ)_/¯)
* All tests now passing
* Pylint fixes
* Oops(That's all you're gonna get :-P)
* Making decorators(WIP, commit so that I don't lose work)
* Decorator made and decorating of functions done(some other changes)
* import fixes and removed temporary test function
* Fixed new broken tests from daemon refactor
* Sanitization of modules
* Reworded errors
* wallet unlock condition checks, fixed breaking changes
* Rebased on amster and other crazy stuff
* Started writing tests
* Tests for component manager
* Fix Daemon Tests
* Fixed passing mutable args in init
* Using constants instead of strings. Added CHANGELOG.md
* Now components can be skipped by setting relevant config in file.
* P-Y-L-I-N-T #angry_emoji
2018-07-05 15:21:52 -04:00
ocornoc
148cc96025
Changed "cliam" to "claim" and added accurate info for nsfw. ( #1285 )
...
* Changed "cliam" to "claim" and added accurate info for nsfw.
* Update CHANGELOG.md
2018-07-05 12:00:43 -04:00
Jack Robison
da7e7503b9
Bump version 0.20.3rc2 --> 0.20.3
...
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-07-03 14:32:38 -04:00
Jack Robison
5adcc86f40
Bump version 0.20.3rc1 --> 0.20.3rc2
...
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-07-03 13:10:35 -04:00
Victor Shyba
1cc7ce69ab
set the peer search timeout as configured and raise it to 30s
2018-07-03 13:47:00 -03:00
Victor Shyba
7e0784d8e0
log a warning when peer search times out for real
2018-07-03 12:20:33 -03:00
Victor Shyba
56613a71d5
let find value run until it finds a value
2018-07-03 11:51:39 -03:00
Jack Robison
2b0d4c1603
Bump version 0.20.2 --> 0.20.3rc1
...
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-07-02 17:24:30 -04:00
Jack Robison
929a0cc5af
exclude self and querying node from closest contacts
2018-07-02 14:54:03 -04:00
Jack Robison
b6289d101d
fix improper sorting when getting the closest peers to a hash
2018-07-02 14:54:03 -04:00
Jack Robison
7fe92d2df0
load all finished blobs into the node datastore
2018-07-02 14:31:09 -04:00
Jack Robison
03769b94b8
accept invalid store tokens for the first expire-time after startup
...
this is to better handle nodes storing to us after we've restarted our node
2018-07-02 13:26:38 -04:00
Jack Robison
c2dc872a54
fix file manager startup locking up when there are many files in a channel
2018-06-29 21:45:30 -04:00
Jack Robison
e0ceaba655
fix blob_list
raising an error when blobs in a stream haven't yet been created
2018-06-25 16:47:23 -04:00
Victor Shyba
c5f4f58221
collect finished deferred before cancel call
2018-06-23 18:23:25 -03:00
Jack Robison
12d1b93b5d
Bump version 0.20.2rc3 --> 0.20.2
...
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-06-23 11:53:23 -04:00
Jack Robison
34febf75f9
Bump version 0.20.2rc2 --> 0.20.2rc3
...
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-06-22 19:15:46 -04:00
Jack Robison
140c45b01f
Revert "add download progress and is downloading flag to daemon status ( #1266 )"
...
This reverts commit 2fa2269
2018-06-22 18:54:22 -04:00
Akinwale Ariwodola
2fa2269cc7
add download progress and is downloading flag to daemon status ( #1266 )
2018-06-21 23:49:22 +01:00
Jack Robison
4bcf0ab7fb
Bump version 0.20.2rc1 --> 0.20.2rc2
...
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-06-20 17:07:54 -04:00
Jack Robison
61a7fd66bf
batch insert/update claims to sqlite
2018-06-20 16:08:12 -04:00
Jack Robison
889b2facce
Bump version 0.20.1 --> 0.20.2rc1
...
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-06-20 16:01:24 -04:00
Jack Robison
e435a9f722
Bump version 0.20.1rc5 --> 0.20.1
...
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-06-19 14:05:16 -04:00
Jack Robison
ba52574091
Bump version 0.20.1rc4 --> 0.20.1rc5
...
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-06-19 13:51:12 -04:00
Jack Robison
eb660e23b7
fix download being stopped if the sd blob downloaded and data did not start within the timeout
...
fixes https://github.com/lbryio/lbry/issues/1172
2018-06-19 13:38:25 -04:00
Jack Robison
89bc26191c
fix wallet startup locking up if a lbryumx server is unavailable
2018-06-18 18:42:48 -04:00
Jack Robison
5edd8deb63
fix blob client protocol not tearing itself down properly after a failure
2018-06-18 15:30:35 -04:00
hackrush
371b27b116
Fix approximations in bid during publish
2018-06-18 10:40:33 -04:00
Jack Robison
db15169ca6
Bump version 0.20.1rc3 --> 0.20.1rc4
...
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-06-15 14:38:23 -04:00
Jack Robison
71e2c545fc
Merge branch 'fix-1165'
2018-06-15 14:38:01 -04:00
Jack Robison
3270693a8f
Bump version 0.20.1rc2 --> 0.20.1rc3
...
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-06-15 14:36:31 -04:00
Jack Robison
c26816c92d
fix database error when updating a claim that we don't have a file for ( https://github.com/lbryio/lbry/issues/1165 )
2018-06-15 10:21:37 -04:00
Jack Robison
e83ff47722
Bump version 0.20.1rc1 --> 0.20.1rc2
...
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-06-15 10:19:43 -04:00
Jack Robison
4c97d2af2e
fix request_needed_blobs for partially reflected streams
2018-06-15 10:10:49 -04:00
Jack Robison
42daf0fc3f
Bump version 0.20.0 --> 0.20.1rc1
...
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-06-14 17:55:10 -04:00
Jack Robison
70355145a0
fix race condition when inserting a blob to the database
2018-06-14 15:15:16 -04:00
Jack Robison
e6df378e9e
fix token validation error when the dht node has just been started ( https://github.com/lbryio/lbry/issues/1248 )
2018-06-14 15:07:10 -04:00
Lex Berezhny
e11a2e6f85
publish accepts decimal string for the bid value
2018-06-13 16:52:35 -04:00
Jack Robison
7030547849
Bump version 0.20.0rc14 --> 0.20.0
...
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-06-13 15:36:49 -04:00
Jack Robison
df7a59f40a
skip test on appveyor
2018-06-13 14:04:14 -04:00
jleute
0dbd15df7b
Merge remote-tracking branch 'upstream/master'
2018-06-12 00:27:08 +02:00
jleute
9735373eef
remove dependency on server_list_reverse
2018-06-12 00:10:23 +02:00
jleute
acbe3b0f65
updated test to compare original and saved config file
2018-06-12 00:06:49 +02:00
jleute
ea7ef54174
remove unused import
2018-06-12 00:06:24 +02:00
jleute
cfe5eb5d56
clean up temporary conf file
2018-06-12 00:06:21 +02:00
jleute
e00238427b
add assert to test_load_save_load_config_file test
2018-06-12 00:05:50 +02:00
jleute
5926b17871
Updated unittest for saving of server lists in the conf file
2018-06-12 00:05:49 +02:00
jleute
2e3ceedc17
added unit test for reversal of conversion of config file entries
2018-06-12 00:04:35 +02:00
jleute
c411d8700b
fixes #1109
2018-06-12 00:04:35 +02:00
Jack Robison
0ae89f01e6
Revert "WIP: feature/1098/sorted-claim-results"
2018-06-12 00:04:32 +02:00
Sergey Rozhnov
d66bce814c
refactored unit test for sort_claim_results
2018-06-12 00:03:30 +02:00
Sergey Rozhnov
c290fb5908
refactored sorting of claims and unit tests
2018-06-12 00:02:48 +02:00
Sergey Rozhnov
156b132070
implemented additional test cases for claims sorting; updated changelog
2018-06-12 00:01:36 +02:00
Sergey Rozhnov
b770b2de6a
simplified claims comparison logic; refactored unit tests
2018-06-12 00:01:36 +02:00
Sergey Rozhnov
c7ba82dc07
claim_list and claim_list_mine in Daemon return sorted results
2018-06-12 00:01:32 +02:00
Jack Robison
c0c12adefa
Bump version 0.20.0rc13 --> 0.20.0rc14
...
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-06-09 11:26:41 -04:00
Jack Robison
9219e5976e
update default lbryum servers
2018-06-09 11:26:26 -04:00
Jack Robison
2619c396d9
Bump version 0.20.0rc12 --> 0.20.0rc13
...
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-06-08 13:50:35 -04:00
Jack Robison
a1218ea565
Merge remote-tracking branch 'origin/fix_prm'
2018-06-08 13:50:23 -04:00
Jack Robison
b92800158e
Bump version 0.20.0rc11 --> 0.20.0rc12
...
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-06-08 13:49:36 -04:00
Jack Robison
d87d8875f6
fix migration error caused by using a current create tables query mid migration
2018-06-08 13:28:49 -04:00
Victor Shyba
8598280654
fix base brm to prm typo
2018-06-08 11:16:21 -03:00
Jack Robison
f0c732644a
Bump version 0.20.0rc10 --> 0.20.0rc11
...
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-06-07 15:18:30 -04:00
Jack Robison
1d0106929c
move daemon test to the same folder as the others
2018-06-07 15:02:47 -04:00
Jack Robison
a821647fbc
pylint and appveyor
2018-06-07 15:02:47 -04:00
Jack Robison
7f3ead67bf
disable forced bucket refresh during join
2018-06-07 15:02:47 -04:00
Jack Robison
f3e848b2e2
work around upnp bug
...
this fixes an incorrectly raised mapping conflict error which the router raises when there is a redirect for the same internal port and a different lan address.
2018-06-07 15:02:47 -04:00
Jack Robison
b0e4fc4faa
fix iterative find lockup
2018-06-07 15:02:47 -04:00
Jack Robison
af096aee41
update test
2018-06-07 15:02:47 -04:00
Jack Robison
ae631f05c3
fix teardown error
2018-06-07 15:02:47 -04:00
Jack Robison
bc0da5e2d1
only use seeds in iterative bootstrap if no contacts are known yet
2018-06-07 15:02:47 -04:00
Jack Robison
16cb6d8657
remove Session._join_deferred
2018-06-07 15:02:47 -04:00
Jack Robison
44644673d7
add profiler
2018-06-07 15:02:47 -04:00
Jack Robison
e8b402f998
remove deferredLock from iterativeFind
...
-fire the first iteration right away
2018-06-07 15:02:47 -04:00
Jack Robison
adca5f5993
fix routing_table_get
2018-06-07 15:02:47 -04:00
Jack Robison
4fbaaac3f3
default new contacts to protocol version 0
2018-06-07 15:02:47 -04:00
Jack Robison
db06191c33
reduce default concurrent announcers to 10
...
-lower rpc timeout to what it originally was
2018-06-07 15:02:47 -04:00
Jack Robison
b0a741b1f4
fix hash announcer semaphore
2018-06-07 15:02:47 -04:00
Jack Robison
537df6c8ad
log socket errors
2018-06-07 15:02:47 -04:00
Jack Robison
42eb172638
refactor announceHaveBlob
...
-add cached `token` to Contact objects to minimize findValue requests
-remove self_store, always store to remote contacts even if we're the closest known node to the hash
-move the store call and error handling from announceHaveBlob to a smaller function of its own
2018-06-07 15:02:47 -04:00
Jack Robison
9a63db4ec6
add protocol version to the dht and migrate old arg format for store
2018-06-07 15:02:47 -04:00
Jack Robison
7d21cc5822
pylint and more tests
2018-06-07 15:02:47 -04:00
Jack Robison
cce3c8c7b5
increase kademlia rpc timeout to 8 seconds
2018-06-07 15:02:47 -04:00
Jack Robison
0e80123615
use 12 minutes instead of 15 as delay in contact_is_good
2018-06-07 15:02:47 -04:00
Jack Robison
659632b66c
fix and update tests
2018-06-07 15:02:47 -04:00
Jack Robison
545930cea4
dht test environment fixes
2018-06-07 15:02:47 -04:00
Jack Robison
9582b7fcf5
use maybe_ping for refreshing stale buckets and storing peers
...
-move store refresh to its own looping call
2018-06-07 15:02:47 -04:00
Jack Robison
945da5985e
fix age used in datastore to determine if a value is expired
2018-06-07 15:02:47 -04:00
Jack Robison
921ee3c4c1
use refreshTimeout in getRefreshList
2018-06-07 15:02:47 -04:00
Jack Robison
8efede6ad6
maybe_ping bad and unknown contacts instead of only unknown
2018-06-07 15:02:47 -04:00
Jack Robison
fb3aac15fa
add optional delay argument to enqueue_maybe_ping, fix default value
2018-06-07 15:02:47 -04:00
Jack Robison
73e813f9ec
verify key size in Distance
2018-06-07 15:02:47 -04:00
Jack Robison
0d23c68797
raise attribute error for non-rpc functions in Contact
2018-06-07 15:02:47 -04:00
Jack Robison
ec1b6b2387
comments, cleaner key_bits constant
2018-06-07 15:02:47 -04:00
Jack Robison
29d5750371
pylint
2018-06-07 15:02:47 -04:00
Jack Robison
07f92014d7
omit bad contacts from getPeersForBlob
...
-refresh stored contacts to detect when they go offline or come back
2018-06-07 15:02:47 -04:00
Jack Robison
98e21cdba0
test re-join dht
2018-06-07 15:02:47 -04:00
Jack Robison
c521120b17
update and fix hash announcer test
2018-06-07 15:02:47 -04:00
Jack Robison
d02ed29e50
add kademlia store and expiration test
2018-06-07 15:02:47 -04:00
Jack Robison
470ebe2de3
remove unnecessary CallLaterManager from test_contact_rpc
2018-06-07 15:02:47 -04:00
Jack Robison
b5f3ed5542
update contact expiration test and add re-join after expiration test
2018-06-07 15:02:47 -04:00
Jack Robison
877da78505
ping contacts right away during refresh instead of using PingQueue
...
-fixes contact expiration test
2018-06-07 15:02:47 -04:00
Jack Robison
a952d2d2c8
reset _listeningPort and _listening Deferred on teardown
2018-06-07 15:02:47 -04:00
Jack Robison
3dfc6bd2cc
update CallLaterManager to be an object
2018-06-07 15:02:47 -04:00
Jack Robison
760417ff3a
pylint
2018-06-07 15:02:47 -04:00
Jack Robison
7da70cc02d
test peer expiration
2018-06-07 15:02:47 -04:00
Jack Robison
d3f4155a2b
add unit tests for contact_is_good
2018-06-07 15:02:47 -04:00
Jack Robison
d250e4d91a
add iterative find test
2018-06-07 15:02:47 -04:00
Jack Robison
950ec5bc9a
update mocks and dht tests
...
-reorganize dht tests
2018-06-07 15:02:47 -04:00
Jack Robison
bdd6f948ca
add port to routing_table_get
2018-06-07 15:02:47 -04:00
Jack Robison
cc32d987b2
update peer_list
2018-06-07 15:02:47 -04:00
Jack Robison
4f72098cad
use PingQueue to try refresh all contacts
2018-06-07 15:02:47 -04:00
Jack Robison
9920ff59d4
force KBucket refreshes
2018-06-07 15:02:47 -04:00
Jack Robison
ae22468fec
fix CallLaterManager trying to remove pending calls multiple times
2018-06-07 15:02:47 -04:00
Jack Robison
aee7a3aa38
simplify announceHaveBlob, remove unused getPeersForBlob
2018-06-07 15:02:47 -04:00
Jack Robison
372fb45e06
refactor dht bootstrap
...
after finding the closest nodes try to populate the buckets out by looking up random ids in their key ranges
2018-06-07 15:02:47 -04:00
Jack Robison
c65274e9e5
add PingQueue to KademliaProtocol
2018-06-07 15:02:47 -04:00
Jack Robison
1adf4f7818
fix constant used to check if a bucket is fresh
2018-06-07 15:02:47 -04:00
Jack Robison
05241012a2
update contact replacement in KBucket to follow BEP0005
...
http://www.bittorrent.org/beps/bep_0005.html
2018-06-07 15:02:47 -04:00
Jack Robison
cf3359044d
fix conditions for when a kbucket should be split
...
https://stackoverflow.com/a/32187456
2018-06-07 15:02:47 -04:00
Jack Robison
5631a24881
improve findCloseNodes, choose closest contacts from higher and lower buckets
2018-06-07 15:02:47 -04:00
Jack Robison
c654bfe296
use reactor clock in TreeRoutingTable instead of time module
2018-06-07 15:02:47 -04:00
Jack Robison
d4e28216a0
sort KBucket.getContacts
2018-06-07 15:02:47 -04:00
Jack Robison
95ed1e044b
raise TransportNotConnected instead of logging a warning
...
-add a _listening Deferred to KademliaProtocol which is called when the protocol is started
2018-06-07 15:02:47 -04:00
Jack Robison
f1e0a784d9
refactor iterativeFind, move to own file
2018-06-07 15:02:47 -04:00
Jack Robison
e5703833cf
prevent duplicate entries in the datastore
2018-06-07 15:02:47 -04:00
Jack Robison
23c202b5e4
refactor Contact class, DHT RPCs, and Contact addition/removal
...
-track contact failures, last replied, and last requested. use this to provide a 'contact_is_good' property on Contact objects
-ensure no duplicate contact objects are created
-remove confusing conflation of node id strings with Contact objects, update docstrings
-move RPC failure tracking to a callback/errback pair in sendRPC (so the contact is only updated once)
-handle seed nodes during the join sequence by setting their node ids after they initially reply to our ping
-name all of the kademlia RPC keyword args, remove confusing **kwargs and dictionary parsing
-add host ip/port to DHT send/receive logging to make the results comprehensible when running many nodes at once
2018-06-07 15:02:47 -04:00
Jack Robison
ad2dcf0893
add the parent node id to KBucket
2018-06-07 15:02:47 -04:00
Jack Robison
406ddaa4ef
use base class to simplify Node init
...
-add looping call helpers which use the same clock as the Node
2018-06-07 15:02:47 -04:00
Jack Robison
e52689a33d
remove OptimizedTreeRoutingTable for now, use TreeRoutingTable
2018-06-07 15:02:47 -04:00
Jack Robison
d65dc0aec3
disable loading DictDataStore in Node.__init__
...
-to be re-done when the datastore uses sqlite
2018-06-07 15:02:47 -04:00
Jack Robison
159e153393
make DataStore clock mockable
2018-06-07 15:02:47 -04:00
Jack Robison
9ed08f8fc9
remove unused constant
2018-06-07 15:02:47 -04:00
Jack Robison
a503a800ca
disable Cryptonator exchange rate feed
2018-06-07 15:02:47 -04:00
Jack Robison
b673c508cc
disable NegotiatedPaymentRateManager, use OnlyFreePaymentsManager for now
2018-06-07 15:02:47 -04:00
Jack Robison
4bd9f3bd68
remove popular hash tracking, simplify DHTPeerFinder
2018-06-07 15:02:47 -04:00
Jack Robison
e6ffd7caf8
remove hashwatcher
2018-06-07 15:02:47 -04:00
Victor Shyba
b91181e640
refactor: simplify add_completed_blob + changelog
2018-05-30 16:19:49 -03:00
Lex Berezhny
23df1d0316
Merge branch 'master' into feature/file_list_sorting
2018-05-29 22:47:09 -04:00
Lex Berezhny
3d17c92bd3
moved import certifi to run only on windows
2018-05-29 22:36:37 -04:00
Akinwale Ariwodola
c4550ef5b6
remove unused import in lbrynet.daemon.Daemon
2018-05-29 22:36:37 -04:00
Akinwale Ariwodola
97547e904e
add os and sys imports
2018-05-29 22:36:37 -04:00