Kaloyan Raev
1ec17653d4
Endpoint for local node info ( #1355 )
...
Adds a new `Info` method to the Kademlia endpoint that returns the following local node info:
* ID
* Type
* Metadata (email and wallet)
* Restrictions (free storage and bandwidth)
The new endpoint is exposed as `inspector kad node-info` command too.
2019-02-25 19:41:51 +01:00
Bill Thorp
c598ed034d
kad.FindNear fix ( #1320 )
...
We realized that the Kademlia FindNear() function was
1. not using XOR distance (AKA _totally broken_)
2. largely a duplicate of the RoutingTable FindNear() function
Changes in this PR:
1. upgraded RoutingTable FindNear() to use iterator and restrictions
2. removed unneeded RoutingTable interface
3. made Kademlia wrap methods that were previously accessed via RoutingTable
4. fixed the tests
2019-02-15 22:23:35 -05:00
Bill Thorp
dfd6589fbe
fix kad refresh bad bucket range ( #1315 )
...
fix kad refresh bad bucket range
2019-02-14 10:47:03 -05:00
Egon Elbre
17a7f9d002
Enable planet Merging test ( #1281 )
2019-02-08 22:35:59 +02:00
Egon Elbre
9c1e299f3c
Ensure everyone sees everyone else ( #1275 )
2019-02-08 11:25:13 +02:00
Egon Elbre
fdbe2db273
Remove node package and simplify DHT interface ( #1233 )
2019-02-06 14:37:17 +02:00
Bill Thorp
690e8b2061
storage node cert cache ( #1226 )
...
* draft
* still errors
* double close fix
* added tests
* weird, goimports must not be working
* renames
* missed one
* forgot to save:
2019-02-05 12:57:56 -05:00
Egon Elbre
87d6410b50
Revert "Remove node package and simplify DHT interface."
...
This reverts commit 03ec1ff92d
.
2019-02-05 10:38:48 +02:00
Egon Elbre
03ec1ff92d
Remove node package and simplify DHT interface.
2019-02-05 10:37:24 +02:00
Egon Elbre
b91d77436f
Test merging planets ( #1181 )
2019-02-01 15:32:28 +02:00
Egon Elbre
97714d150f
Remove unused kademlia.Disconnect method ( #1178 )
2019-01-30 22:57:13 +02:00
Egon Elbre
d5346982c2
Delete provider package ( #1177 )
2019-01-30 22:47:21 +02:00
Alexander Leitner
7c741c16d1
Readable sizes in dashboard ( #1180 )
...
* Readable sizes
* Use tabwriter
* Added more addresses to dashboard stats
* Use kad to look up addresses
* Move dashboard command to dashboard.go
2019-01-30 14:49:25 -05:00
Egon Elbre
e1a8bbdcb6
Kademlia flags cleanup ( #1137 )
2019-01-29 08:51:07 +02:00
Dylan Lott
bb2588e9ae
Refactors kademlia inspector to use FindNear ( #1157 )
...
* WIP
* update identity paths to get dump-nodes working
* Remove commented out code
* remove comment
* updates from code reviews
* updates linter
2019-01-28 15:53:37 -07:00
Dylan Lott
df903ea215
Decreases refresh time per bucket in Kademlia ( #1150 )
2019-01-28 12:36:20 -07:00
Egon Elbre
d50c07e56c
Implement WorkGroup ( #1151 )
2019-01-28 21:04:42 +02:00
Egon Elbre
f7e18882c4
Kademlia closing race ( #1139 )
2019-01-26 00:33:20 +02:00
Jennifer Li Johnson
856b98997c
updates copyright 2018 to 2019 ( #1133 )
2019-01-24 15:15:10 -05:00
Michal Niewrzal
3fdb47e31c
Try accessing bootstrap node for verification ( #1089 )
2019-01-23 17:48:46 +02:00
Egon Elbre
b6c61cdd55
Use storagenode.Peer for storagenode ( #1107 )
2019-01-23 12:39:03 +02:00
Egon Elbre
2d00f882a3
Kademlia Dialer ( #1092 )
2019-01-18 10:00:56 -05:00
Egon Elbre
78dc02b758
Satellite Peer ( #1034 )
...
* add satellite peer
* Add overlay
* reorganize kademlia
* add RunRefresh
* add refresh to storagenode.Peer
* add discovery
* add agreements and metainfo
* rename
* add datarepair checker
* add repair
* add todo notes for audit
* add testing interface
* add into testplanet
* fixes
* fix compilation errors
* fix compilation errors
* make testplanet run
* remove audit refrences
* ensure that audit tests run
* dev
* checker tests compilable
* fix discovery
* fix compilation
* fix
* fix
* dev
* fix
* disable auth
* fixes
* revert go.mod/sum
* fix linter errors
* fix
* fix copyright
* Add address param for SN dashboard (#1076 )
* Rename storj-sdk to storj-sim (#1078 )
* Storagenode logs and config improvements (#1075 )
* Add more info to SN logs
* remove config-dir from user config
* add output where config was stored
* add message for successful connection
* fix linter
* remove storage.path from user config
* resolve config path
* move success message to info
* log improvements
* Remove captplanet (#1070 )
* pkg/server: include production cert (#1082 )
Change-Id: Ie8e6fe78550be83c3bd797db7a1e58d37c684792
* Generate Payments Report (#1079 )
* memory.Size: autoformat sizes based on value entropy (#1081 )
* Jj/bytes (#1085 )
* run tally and rollup
* sets dev default tally and rollup intervals
* nonessential storj-sim edits (#1086 )
* Closing context doesn't stop storage node (#1084 )
* Print when cancelled
* Close properly
* Don't log nil
* Don't print error when closing dashboard
* Fix panic in inspector if ping fails (#1088 )
* Consolidate identity management to identity cli commands (#1083 )
* Consolidate identity management:
Move identity cretaion/signing out of storagenode setup command.
* fixes
* linters
* Consolidate identity management:
Move identity cretaion/signing out of storagenode setup command.
* fixes
* sava backups before saving signed certs
* add "-prebuilt-test-cmds" test flag
* linters
* prepare cli tests for travis
* linter fixes
* more fixes
* linter gods
* sp/sdk/sim
* remove ca.difficulty
* remove unused difficulty
* return setup to its rightful place
* wip travis
* Revert "wip travis"
This reverts commit 56834849dcf066d3cc0a4f139033fc3f6d7188ca.
* typo in travis.yaml
* remove tests
* remove more
* make it only create one identity at a time for consistency
* add config-dir for consitency
* add identity creation to storj-sim
* add flags
* simplify
* fix nolint and compile
* prevent overwrite and pass difficulty, concurrency, and parent creds
* goimports
2019-01-18 08:54:08 -05:00
Egon Elbre
eb69ecadec
Storage Node Peer ( #1005 )
2019-01-10 15:13:27 +02:00
Egon Elbre
9e55a7209d
Fix data-race in UpdateSelf ( #991 )
2019-01-08 18:01:22 +02:00
Egon Elbre
db5a990719
lint imports grouping ( #993 )
2019-01-08 16:05:14 +02:00
Jennifer Li Johnson
a2fa5c4c5a
Proper NodeType Handling ( #873 )
...
* adds enums to nodetype
* updating nodetype todos
* ran pb updates
* reorder nodetypes
* adding checks
* wip
* wip
* wip
* bug in test-captplanet
* wip
* add values to storagenode, satellite, captplanet binaries
* Cleanup
* more cleanup
* wip
* lint
* lint
* wip
* fixes bug
* regenerate protos
Change-Id: Id270212e8c7479e52641058042cf23b5317ab773
* limit node type changes to kademlia
Change-Id: I9c1a6cc4a79e05086627f0fdeb5028c62ce754f4
* dpanic
Change-Id: Id952a2ad13c807ebaea0ec0a875405e267d81c3e
* review comments
Change-Id: I7f9b77ef22779dd012fd490375b136014f51f834
2019-01-02 11:47:34 -07:00
JT Olio
3fbd8c7d15
kademlia: remove a redundant argument ( #951 )
2019-01-02 12:57:06 +02:00
Dylan Lott
7569b7d71b
Node lifecycle hooks ( #920 )
...
* wires up first draft of lifecycle methods
* creates interface on transport
* node lifecycle hooks works
* linter fixes
* adds error log at connection success
* chnages Observer interface to use context
* Makes Discovery take its own logger
* WIP
* linter fixes
* Test fixes
* adds in ConnFailure code for cache
2018-12-21 21:51:42 -07:00
Dylan Lott
2f6835a3be
Adds a logger to RoutingTable ( #922 )
...
* adds delete functions and tests for cache
* adds logger to routing table struct and passes it through to logger
* add loggers
2018-12-21 17:48:53 -07:00
Bill Thorp
3fa094f3da
Add the ability for Kademlia to do a refresh for each bucket ( #908 )
...
* added random id in range, added refresh
2018-12-20 16:45:06 -05:00
Egon Elbre
d9a13667fc
Use fixed logger for Kademlia and make not being able to connect in discovery debug statement. ( #899 )
2018-12-18 17:13:32 +02:00
Egon Elbre
7a80e7bf2f
Use testplanet in node tests ( #841 )
2018-12-12 17:40:33 +02:00
Kaloyan Raev
c025c13706
Fix deadlock on testplanet shutdown ( #798 )
2018-12-07 20:31:59 +02:00
Egon Elbre
c4033b15af
Simplify peer discovery implementation ( #765 )
2018-12-05 16:32:37 +02:00
Dylan Lott
c6d790d58e
Improvements to Kad Lookups ( #731 )
...
* adds channel for getting node out of lookup
* WIP adding the channels to lookups
* WIP adding channel to node lookups
* Wires up FindNodes method with channels
* WIP adds a test suite for lookup - tests are still failing
* WIP wires up use of testplanet for kademlia lookup tests
* WIP merging in node id changes
* Merges in pkg/storj node type changes
* Tests passing
* Lookup node working via Inspector now
* updates
* WIP working on getting tests passing
* WIP getting tests passing
* FindNode works
* Linter fix
* Adds copyrights to lookup_test
* removes a fmt.Printf I missed
* Removes commented out lines
2018-12-04 14:39:28 -07:00
Egon Elbre
efe475b448
Ensure that restrictions are consistent. ( #759 )
2018-12-04 16:02:03 +02:00
Bryan White
24f6da2dd5
Kad inspector fixes ( #746 )
...
* pretty print kad inspector
* fix format string
* cleanup
* cleanup
* usage, args, print improvements
* kad inspector tweaks
* pretty print kad inspector
* cleanup
* cleanup
* kad inspector tweaks
* linter fixes
2018-12-03 21:01:54 +01:00
Bryan White
2a0c4e60d2
preparing for use of customtype
gogo extension with NodeID
type ( #693 )
...
* preparing for use of `customtype` gogo extension with `NodeID` type
* review changes
* preparing for use of `customtype` gogo extension with `NodeID` type
* review changes
* wip
* tests passing
* wip fixing tests
* more wip test fixing
* remove NodeIDList from proto files
* linter fixes
* linter fixes
* linter/review fixes
* more freaking linter fixes
* omg just kill me - linterrrrrrrr
* travis linter, i will muder you and your family in your sleep
* goimports everything - burn in hell travis
* goimports update
* go mod tidy
2018-11-29 19:39:27 +01:00
Egon Elbre
0ae05cf834
Ensure that we only choose storage nodes ( #732 )
2018-11-29 16:57:00 +02:00
Maximillian von Briesen
b884ee4626
Update protos to fit style guide (easy review) ( #702 )
...
* fix overlay.proto and piecestore.proto to meet style guide
* update code to be consistent with regenerated protos
2018-11-23 21:46:53 -05:00
Michal Niewrzal
f72832ee69
Add metadata to pb.Node (email and wallet) ( #671 )
...
* Add metadata to pb.Node (email and wallet)
* goimports
* reorganize config
* fix typo
* remove 'foo' id
* add basic test
2018-11-21 16:07:18 +01:00
Bryan White
dabd87cb36
swap golang/protobuf out for gogo/protobuf ( #692 )
...
* swap golang/protobuf out for gogo/protobuf
* revert go.mod and go.sum changes
* linter fixes
2018-11-20 19:29:07 +01:00
Dennis Coyle
e7e0d1daaa
Coyle/disable mock ( #627 )
...
* disabled mock overlay from captplanet
2018-11-20 11:54:52 -05:00
Bill Thorp
d3c347a0ac
Verify overlay cache is accurately and fully tested ( #540 )
...
* added intro node id, moved port range to 1024, listen in go routines
2018-11-14 16:30:07 -05:00
Bryan White
57572cdeed
Use sync.Cond
with kademlia workers ( #512 )
...
* wip - have to take a break; crying baby
* linter fixes
* bugfix
* responding to review feedback
* linter fixes?
* linter fixes
* feedback fixes
* feedback fixes
* linter fixes
* linter fixes
* linter fixes
2018-11-01 18:03:46 +01:00
Egon Elbre
68796d7964
Ensure we can create kademlia with custom storage ( #533 )
2018-10-26 19:54:00 +03:00
Dennis Coyle
3b7b2afb1f
Added ping support to node client ( #491 )
...
* added ping support to node client
* Added tests to Ping
* Added connection creation responsibility to Connection Pool
2018-10-26 12:38:22 -04:00
Jennifer Li Johnson
8d779d3d3e
Disconnects nodeclient, routing table dbs when done with kademlia ( #507 )
...
* disconnect from nodeclient
* cleanup connections in tests
* kademlia disconnects from nodeclient
* updating disconnect method for mocks
* creates separate disconnect and removeAll methods for tests
* adds init to connection pool
* fix folder cleanup and disconnect
* creates and cleans up test db files and disconnects kad
* removes db/.keep
* includes disconnect within cleanup methods
* creates public init method on connection pool to handle mutex copy issues
* remove all after disconnect
* pair creation and destruction
* checks disconnect error
* remove ctx
* fixes mock kad
2018-10-26 10:07:02 -04:00
Egon Elbre
03bd93bba7
Make kademlia use less file-descriptors ( #498 )
2018-10-18 19:20:23 +03:00