Commit Graph

866 Commits

Author SHA1 Message Date
Whyrusleeping
05a95cace5 Merge pull request #1336 from filecoin-project/vet/some-go-vet-fixes
some go vet fixes
2020-03-06 00:11:13 -08:00
Łukasz Magiera
b15c476698 node_test: set sector counters in repo 2020-03-06 08:47:03 +01:00
whyrusleeping
16096e2c71 some go vet fixes 2020-03-05 22:46:07 -08:00
Łukasz Magiera
7d3e16986c sectorbuilder type updates 2020-03-06 06:38:59 +01:00
whyrusleeping
1183e082af add command to inspect and redeem block rewards 2020-03-05 21:32:52 -08:00
Steven Allen
6992fd4dba chore(dep): update dependencies
Updates:

* cid, multihash, and multiaddr to ensure that minimal varints are used.
* log to deduplicate some code between version 2 and version 1.
* multistream to avoid writing from multiple threads.
* badger/datastore to harden prefix handling in queries.
* libp2p to 0.5.2

BREAKING:

The new libp2p version now formats addresses with /p2p instead of /ipfs. /ipfs
multiaddrs are still supported.
2020-03-05 16:28:42 -08:00
Łukasz Magiera
16cb27b5f9 Get node_test to pass 2020-03-05 23:27:30 +01:00
Łukasz Magiera
1461e475da storage: Support adding paths at runtime 2020-03-05 23:02:01 +01:00
Łukasz Magiera
a5e5918fc5 mod tidy; gofmt 2020-03-05 20:21:06 +01:00
Łukasz Magiera
7db1dd52bd storagemgr: Wire up most of AddPiece logic 2020-03-05 01:38:07 +01:00
Łukasz Magiera
e483383a44 node: wire up new storage manager 2020-03-04 20:42:49 +01:00
Łukasz Magiera
799ff17c7c Merge remote-tracking branch 'origin/testnet/3' into feat/4stage-seal 2020-03-04 06:37:11 +01:00
whyrusleeping
37d5baf0b2 fix blocks topic 2020-03-03 21:03:35 -08:00
Łukasz Magiera
4e46d00eb6 Merge remote-tracking branch 'origin/testnet/3' into feat/4stage-seal 2020-03-04 04:01:13 +01:00
whyrusleeping
9169a073b6 add miner side commands and a few other goodies 2020-03-03 18:49:00 -08:00
Łukasz Magiera
12d870e274 sealmgr: Read only multi-path file manager 2020-03-04 03:24:08 +01:00
whyrusleeping
52acfb88ee use proper manual piece and size setting 2020-03-03 18:19:28 -08:00
whyrusleeping
2be2891647 wire up lotus side of make deal for manual commP 2020-03-03 16:18:08 -08:00
whyrusleeping
99c842e027 integrate client interface to allow for offline deals 2020-03-03 16:18:08 -08:00
whyrusleeping
d6723935b9 fixup to match spec, move constants to common location 2020-03-03 15:48:25 -08:00
Łukasz Magiera
a0dbb6bdd6 Storage Manager refactor 2020-03-03 23:19:22 +01:00
whyrusleeping
c51a83b404 fix a few libp2p related problems 2020-03-02 20:55:25 -08:00
lanzafame
4f2baa8953 conform protocol ids to spec
Signed-off-by: lanzafame <adrianlanzafame92@gmail.com>
2020-03-03 11:34:43 +10:00
Travis Person
c362d75a38 Reduce default storage miner worker count
The current default worker count of 5 can result in high memory usage of
the lotus-storage-miner process when a user starts multiple sector
pledges within a short time of each other and can result in the process
being killed for OOM.

Reducing the worker count to 2 will provide a safer default.
2020-03-02 23:28:05 +00:00
whyrusleeping
60b19c51ef more misc fixes 2020-03-01 17:09:38 -08:00
hannahhoward
bda5315866 fix(paychmr): decode address correctly, pass wallet 2020-02-28 19:26:33 -08:00
hannahhoward
0d7afef0c5 fix(paychmgr): add to paych serialziation 2020-02-28 19:26:33 -08:00
Aayush Rajasekaran
fe8db295e7 Re: #1290: Add a lotus wallet verify API and CLI command
- The command takes an address, message, and signature, and returns true if the sig is valid
2020-02-28 15:56:15 -08:00
whyrusleeping
0945d8725e fixing miner logic to make more tests pass 2020-02-28 11:31:28 -08:00
whyrusleeping
00efd097c7 implement basic message filtering 2020-02-27 17:40:16 -08:00
Łukasz Magiera
f83bbc2cbe Regen cbor marshalers 2020-02-28 00:34:48 +01:00
whyrusleeping
d8dda1ee66 debugging test failure 2020-02-27 15:14:15 -08:00
whyrusleeping
df6e3e83bf make it all build finally 2020-02-27 13:45:31 -08:00
Łukasz Magiera
0a9e0acc6f types: Drop some redundant alias types 2020-02-25 22:09:22 +01:00
Łukasz Magiera
ae634ef7df actors: Remove addrass aliases 2020-02-25 21:54:58 +01:00
Łukasz Magiera
cd10a3126b actors: drop a bunch of type aliases 2020-02-25 21:35:15 +01:00
Łukasz Magiera
1920981713 hello: regen type-gen 2020-02-25 21:21:58 +01:00
Łukasz Magiera
794429dd55 post-upstream-merge fixes 2020-02-24 18:45:25 +01:00
Łukasz Magiera
d787aa5007 Merge branch 'testnet/3' into feat/specs-actors 2020-02-24 18:32:02 +01:00
Łukasz Magiera
def0e0a7a1 Merge remote-tracking branch 'origin/master' into testnet/3 2020-02-24 17:30:46 +01:00
Łukasz Magiera
1d417685d1 Fix Sealing in TestAPIDealFlow 2020-02-23 21:33:10 +01:00
Łukasz Magiera
917df9a5b8 More unified randomness handling 2020-02-23 21:00:47 +01:00
Łukasz Magiera
a82d156ccb Deal flow fixes 2020-02-23 16:50:36 +01:00
whyrusleeping
97425ea1c9 fix some tests 2020-02-22 23:49:15 -08:00
Łukasz Magiera
226685dc1c Implement committed capacity sectors 2020-02-23 01:47:47 +01:00
Łukasz Magiera
99c0e14fd8 Fix genesis writing 2020-02-22 13:03:41 +01:00
Łukasz Magiera
b12482df89 move peermgr, tracing into lib 2020-02-22 12:36:22 +01:00
Łukasz Magiera
111d35deef seed: New genesis creation commands 2020-02-21 21:57:00 +01:00
Łukasz Magiera
5b96b648b4 hello fixes 2020-02-21 20:25:57 +01:00
Łukasz Magiera
852e888232 cmd/lotus: Fix build 2020-02-21 19:00:10 +01:00
Łukasz Magiera
a6268f055d storageminer: Update api interfaces 2020-02-21 18:43:44 +01:00
Łukasz Magiera
104871d6c9 paych: Lanes are back to u64 2020-02-21 18:26:44 +01:00
whyrusleeping
00d7bd1a77 chain/gen tests now pass! 2020-02-20 00:37:10 -08:00
Łukasz Magiera
69ec3c205a Merge remote-tracking branch 'origin/master' into testnet/3 2020-02-19 22:10:14 +01:00
Aayush Rajasekaran
c742d45b19 Re: #1232: Add a FindPeer RPC method
- Given a Peer ID, this method looks into the DHT to find that peer's addresses
- This commit also adds a CLI command to use this new RPC endpoint
2020-02-18 16:31:42 -05:00
Whyrusleeping
6afeb2e72b
Merge pull request #1268 from filecoin-project/feat/simple-spam-protection
basic gossip spam protection logic
2020-02-18 10:39:36 -08:00
whyrusleeping
4f6ec225cf mark peer for disconnection in connmgr 2020-02-18 09:20:17 -08:00
Aayush Rajasekaran
60970008c8 Re: #1250: API methods should receive TipSetKeys, not TipSets, as input 2020-02-17 19:53:43 -05:00
Whyrusleeping
4750f32ab6
Merge pull request #1253 from filecoin-project/feat/bad-ts-cache-reasons
mark down reason for block inclusion in bad tipset cache
2020-02-17 12:20:20 -08:00
Whyrusleeping
1c9072bf6e
Merge pull request #1235 from filecoin-project/feat/tls
Prefer tls
2020-02-17 11:26:50 -08:00
Jakub Sztandera
4d5af19b9d
Merge pull request #1258 from filecoin-project/feat/expose-jet-permission-error
Expose JWT permission error
2020-02-17 20:16:12 +01:00
Jakub Sztandera
8af80169c0 Add graphsync
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-02-17 18:15:30 +01:00
whyrusleeping
1dafcf24f1 basic gossip spam protection logic 2020-02-16 21:51:18 -08:00
Travis Person
d6cf76a91a cmd: add log command
Add a log command to the common api which allows for listing all
initialized golog subsystems, and setting their log level during
runtime.

Command description also adds golog environment variable documentation.
2020-02-15 06:04:55 +00:00
Łukasz Magiera
c544c2b5c5 Set hamt bitwidth 2020-02-14 15:14:39 +01:00
Łukasz Magiera
74bf9119cc spects-actors: More type propagation 2020-02-13 04:50:45 +01:00
Łukasz Magiera
36aed6f871 Update cbor-gen 2020-02-13 02:37:28 +01:00
Łukasz Magiera
e1a593c22e Rename paych -> paychmgr to fix cbor-gen 2020-02-13 01:28:23 +01:00
Łukasz Magiera
e5ab64a3ab Fix client market impl, gofmt 2020-02-13 01:15:33 +01:00
Łukasz Magiera
4684446315 Merge pull request #1259 from filecoin-project/feat/spec-actors-markets-update
feat(markets): use non-custom go-fil-markets, from master
2020-02-13 00:57:41 +01:00
Łukasz Magiera
0d6cfc879d Use specs-actors ignatures 2020-02-13 00:52:36 +01:00
hannahhoward
720e29848b feat(markets): use non-custom go-fil-markets, from master 2020-02-12 14:32:26 -08:00
Jakub Sztandera
49167cc55f
Expose JWT permission error
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-02-12 21:25:29 +01:00
Jakub Sztandera
8610bcbec3 Use tuple encoding
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-02-12 19:23:15 +01:00
Jakub Sztandera
50702f309f Use new hello protocol
Using map encoder.
Types in LatencyMessage are int64 in spec, butl 1. tupled generator
does not support int64 right now; 2. there is no harm in using uint64 here.

Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-02-12 19:08:49 +01:00
whyrusleeping
243b295559 expose bad block cache reasons through api/cli 2020-02-11 23:44:55 -08:00
Łukasz Magiera
63e801e00f genesis: Cleanup the structure 2020-02-11 21:48:03 +01:00
Łukasz Magiera
4d5c4d89ce stmgr: Update stmgr utils 2020-02-11 03:33:27 +01:00
Łukasz Magiera
c0ed0dda8e specs-actors: Fis some test compilation errors 2020-02-10 20:16:36 +01:00
Łukasz Magiera
c72727b4fd specs-actors: Fix most compilation errors 2020-02-09 07:06:32 +01:00
Łukasz Magiera
13435aebdc Spec Actors integration 2020-02-08 03:18:32 +01:00
Jakub Sztandera
352fb9f9ea
Prefer tls
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-02-07 14:04:47 +01:00
Łukasz Magiera
1d0d429435 actors: Drop refs to multisig_actor.go 2020-02-06 20:49:21 +01:00
Łukasz Magiera
72c89ab89b Merge pull request #1223 from filecoin-project/fix/squash-forks
squash forks and use correct amt library everywhere
2020-02-06 20:14:55 +01:00
hannahhoward
d2c5d81e59 fix(deps): update go-fil-markets
update go-fil-markets to latest to solve an issue with retrieval
2020-02-05 18:48:47 -08:00
Łukasz Magiera
cbf63aab1e Merge branch 'master' into testnet/3 2020-02-05 21:27:04 +01:00
whyrusleeping
faf05cafcf squash forks and use correct amt library everywhere 2020-02-04 18:26:42 -08:00
Łukasz Magiera
c013ef3b30 Merge pull request #1219 from filecoin-project/feat/auto-shim
Make it all build
2020-02-05 00:01:41 +01:00
whyrusleeping
028a113737 Make it all build 2020-02-04 14:19:05 -08:00
Whyrusleeping
955b86deea
Merge pull request #1188 from filecoin-project/feat/sigs-standalone
Don't depend on ffi
2020-02-04 10:45:21 -08:00
Jakub Sztandera
ad9e4db3d6
Reduce sig import locations
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-02-04 15:12:10 +01:00
Łukasz Magiera
63ee6b6791 remote: Fix put in commit 2020-02-04 08:01:13 +01:00
Łukasz Magiera
d9f3b6c121 Merge pull request #1148 from filecoin-project/feat/msig-integration
DO NOT MERGE: Feat/msig integration
2020-02-04 07:19:49 +01:00
Łukasz Magiera
0e81c1cf7e Merge branch 'testnet/3' into feat/update-markets 2020-02-04 07:17:22 +01:00
whyrusleeping
9cee31193c clean up tests and fix cli commands 2020-02-03 19:37:55 -08:00
Łukasz Magiera
90ecfbe0e4 Merge branch 'master' into feat/new-sb-fs 2020-02-04 04:15:25 +01:00
whyrusleeping
dfe87c9f6f update to latest hamt changes 2020-02-03 18:52:18 -08:00
Łukasz Magiera
a8d18c8ac9 api-backed blockstore 2020-02-04 03:47:59 +01:00
laser
d8f5330c29 don't consume short-lived context 2020-02-03 15:48:11 -08:00
laser
ea2f53745e split FPoStScheduler from Miner
Rationale: Nodes want to handle scheduling of PoSts. Splitting the 
FPoStScheduler from the Miner allows nodes to reuse the Miner w/out 
having to reuse the PoSt scheduler.
2020-02-03 15:48:11 -08:00
Łukasz Magiera
c9bd682c33
Merge pull request #1178 from filecoin-project/feat/multisig-balance-rpc
add a method to query available multisig balance
2020-02-04 00:43:08 +01:00
Łukasz Magiera
8da64d710e sealing: Work around broken remote sector put 2020-02-03 04:48:56 +01:00
Łukasz Magiera
a62572bb76 Merge remote-tracking branch 'origin/master' into feat/new-sb-fs 2020-01-31 08:36:47 +01:00
Łukasz Magiera
95f344540e Fix tests 2020-01-31 02:27:38 +01:00
Łukasz Magiera
aefc463586 build: Lazy ParametersJson 2020-01-30 23:50:24 +01:00
whyrusleeping
b5f9a385ae add a method to query available multisig balance 2020-01-29 17:23:16 -08:00
Łukasz Magiera
4aaa758543 fpost: better fault checks 2020-01-30 01:50:58 +01:00
Łukasz Magiera
3f58ffe572 storageminer: New storage config 2020-01-29 20:53:45 +01:00
Łukasz Magiera
5af64c53b6 initial sectorbuilder FS refactor integration 2020-01-29 00:08:02 +01:00
hannahhoward
433f9ff211 fix(markets): update version, pass payment interval params 2020-01-28 14:08:13 -08:00
hannahhoward
be26c56362 feat(client): provide more informative retrieval message 2020-01-28 14:08:13 -08:00
hannahhoward
71289b58ff feat(markets): update to support car files
Upgrades lotus version of go-fil-markets to its head, which supports car files and handles tracking
of pieces, reducing the size of sectorBlocks
2020-01-28 14:08:13 -08:00
Łukasz Magiera
77113844a2 chain slash-consensus command 2020-01-24 13:58:06 -08:00
Łukasz Magiera
c3a5da8586 storageminer: log flag for sector status 2020-01-23 15:18:05 +01:00
Łukasz Magiera
cf153f89df
Merge pull request #1131 from filecoin-project/feat/soft-map-cbg
cbor-gen: Soft struct-map unmarshaling
2020-01-21 19:44:39 +01:00
Łukasz Magiera
fd0bfc8777
Merge pull request #1089 from filecoin-project/feat/state-call-cmd
implement state call command for easy method calling
2020-01-21 17:16:54 +01:00
Łukasz Magiera
2076cb106d cobr-gen: Soft struct-map unmarshaling 2020-01-21 17:05:10 +01:00
whyrusleeping
955b755055 wire up importing 2020-01-20 17:53:55 -08:00
whyrusleeping
57812fc61d chain export should work now 2020-01-20 15:51:28 -08:00
Łukasz Magiera
1e782b3de2 Merge branch 'master' into feat/event-states 2020-01-18 14:40:59 +01:00
whyrusleeping
0a45e97699 implement state call command for easy method calling 2020-01-17 18:27:29 -08:00
whyrusleeping
fb173c058e WIP: blizzard fork changes and test utilities 2020-01-16 18:33:43 -08:00
Łukasz Magiera
d4c50b8ea0 sealing: gofmt 2020-01-16 03:54:57 +01:00
Łukasz Magiera
ffdd436b52 sealing: Handle seed changes more correctly 2020-01-16 02:25:49 +01:00
Łukasz Magiera
604bf64ef6 Move miner sealing logic into a separate package 2020-01-15 21:49:11 +01:00
jsign
08b99ff413 new api to calculate arbitrary forks revert and applys
Signed-off-by: jsign <jsign.uy@gmail.com>
2020-01-14 21:24:08 -03:00
Łukasz Magiera
05edf50931 Merge branch 'master' into feat/event-states 2020-01-15 00:35:52 +01:00
Łukasz Magiera
8a9707788c Merge branch 'master' into feat/event-states 2020-01-14 16:31:10 +01:00
Łukasz Magiera
1bb9cfee53 gofmt 2020-01-14 16:12:42 +01:00
Łukasz Magiera
a0f2bb0755 Increase block delay for TestAPIDealFlowReal 2020-01-14 03:51:14 +01:00
Łukasz Magiera
94a21e3aeb Update deps 2020-01-14 03:05:46 +01:00
Łukasz Magiera
2ca0c152ba Deal tests on mock sectorbuilder 2020-01-14 03:05:46 +01:00
Łukasz Magiera
a2bcc1fec2 Mostly functional mock sectorbuilder 2020-01-14 03:05:35 +01:00
whyrusleeping
fefd21ad9c remove private network and put dht into a sub namespace 2020-01-13 15:29:06 -08:00
Łukasz Magiera
34abc3d023 Merge branch 'feat/testnet2' into feat/event-states 2020-01-13 15:52:43 +01:00
Łukasz Magiera
a896b30039 gofmt 2020-01-10 20:55:58 +01:00
Łukasz Magiera
50bac00329 Merge branch 'master' into feat/testnet2 2020-01-10 20:55:40 +01:00
Łukasz Magiera
f6d41ee77d Port sector state maching to evtsm 2020-01-10 20:24:15 +01:00
hannahhoward
0ce1bf706b refactor(markets): reorg file structure 2020-01-10 10:33:26 -08:00
hannahhoward
56653eeca6 fix(storagemarket): fix compile errors 2020-01-10 10:01:48 -08:00
hannahhoward
65ecb33630 feat(storagemarket): extract storage market
remove all shared components, point at go-fil-components repo
2020-01-10 09:49:07 -08:00
hannahhoward
0a4eeb7cb1 refactor(retrievalmarket): switch to go-fil-markets repo
Switch go-fil-components to go-fil-markets
2020-01-10 09:13:12 -08:00
hannahhoward
ccf359d057 feat(retrieval): extract retrievalmarket
Extract retrieval market and modify shared types
2020-01-09 19:46:07 -08:00
hannahhoward
da4528932a feat(storagemarket): initial extraction
Types for storage market

Modify deals.Provider to implement storagemarket.StorageProvider

Inject storagemarket.StorageProvider

Storage Provider interfaces

Storage Client interfaces

Add ValidatePublishedDeal to ClientNodeAdapter

Remove FundManager from client

Remove Wallet from client

Remove StateManager, Events, Wallet from client

Rebasing

- Copy types.BigInt, use TokenAmount/BigInt for token amounts
- Remove auto-imported log package
- Move `checkAskSignature` to a client file.
- Plumb contexts through

fix(storagemarket): use publish cids

Switch back to publish message cids to reduce the dependency surface area
2020-01-10 03:29:46 +01:00
Łukasz Magiera
5f460b380d
Merge pull request #1045 from filecoin-project/feat/mock-sectorbuilder
WIP: implement mock sectorbuilder for easier storage miner testing
2020-01-10 01:33:43 +01:00
Łukasz Magiera
f0f8d83980
Merge pull request #826 from filecoin-project/feat/retrieval-market-skeleton
Retrieval Market Cleanup W/ Node Interfaces
2020-01-09 22:06:46 +01:00
whyrusleeping
5e16aab51b fix tests, expand interfaces a little 2020-01-09 10:28:14 -08:00
Łukasz Magiera
fac47bfc54 Pass correct datastore into sectorbuilder 2020-01-09 14:23:44 +01:00
whyrusleeping
cc56389dbb attempt to fix the DI loading, still not working 2020-01-08 20:51:18 -08:00
whyrusleeping
d08898ef37 make storage miner acccept an interface to the sectorbuilder 2020-01-08 17:10:17 -08:00
Łukasz Magiera
8cbcbbd7a4 Merge branch 'feat/testnet2' of github.com:filecoin-project/go-lotus into feat/testnet2 2020-01-08 22:44:54 +01:00
hannahhoward
5b74a71dd3 feat(retrievalmarket): extract skeleton interfaces
Define all types to spec, modify interfaces, wrap old code

fix(builder): use client blockstore for retrieval

feat(retrieval): add node implementations

add node adapters for client & provider so that retrieval can be extracted
2020-01-08 12:45:43 -08:00
Łukasz Magiera
da38822dfd paramfetch: bring parameters.json back to this repo 2020-01-08 21:31:35 +01:00
Jakub Sztandera
1ed62628a7
Update go-log to v2
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-01-08 20:22:31 +01:00
Jakub Sztandera
886898b137
Update to badger v2
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-01-08 19:56:45 +01:00
hannahhoward
5312340bf9 refactor(datatransfer): use independent repo
Use independent repo for go-data-transfer
2020-01-08 14:20:31 +01:00
hannahhoward
61e2568b8d feat(datatransfer): implement and extract
feat(datatransfer): setup implementation path

Sets up a path to implementation, offering both the dagservice implementation and a future graphsync
implement, establishes message interfaces and network layer, and isolates the datatransfer module
from the app

WIP using CBOR encoding for dataxfermsg

* Bring cbor-gen stuff into datatransfer package
* make transferRequest private struct
* add transferResponse + funcs
* Rename VoucherID to VoucherType
* more tests passing

WIP trying out some stuff
* Embed request/response in message so all the interfaces work AND the CBOR unmarshaling works: this is more like the spec anyway
* get rid of pb stuff

all message tests passing, some others in datatransfer

Some cleanup for PR

Cleanup for PR, clarifying and additional comments

mod tidy

Respond to PR comments:
* Make DataTransferRequest/Response be returned in from Net
* Regenerate cbor_gen and fix the generator caller so it works better
* Please the linters

Fix tests

Initiate push and pull requests (#536)

* add issue link for data TransferID generation
* comment out failing but not relevant tests
* finish voucher rename from Identifier --> Type

tests passing

cleanup for PR

remove unused fmt import in graphsync_test

a better reflection

send data transfer response

other tests passing

feat(datatransfer): milestone 2 infrastructure

Setup test path for all tickets for milestone 2

responses alert subscribers when request is not accepted (#607)

Graphsync response is scheduled when a valid push request is received (#625)

fix(datatransfer): fix tests

fix an error with read buffers in tests

fix(deps): fix go.sum

Feat/dt graphsync pullreqs (#627)

* graphsync responses to pull requests

Feat/dt initiator cleanup (#645)

* ChannelID.To --> ChannelID.Initiator
* We now store our peer ID (from host.ID()) so it can be used when creating ChannelIDs.
* InProgressChannels returns all of impl.channels, currently just for testing
* Implements go-data-transfer issue
* Some assertions were changed based on the above.
* Renamed some variables and added some assertions based on the new understanding
* Updated SHA for graphsync module
* Updated fakeGraphSync test structs to use new interfaces from new SHA above

Techdebt/dt split graphsync impl receiver (#651)

* Split up graphsyncImpl and graphsyncReceiver
* rename graphsync to utils

DTM sends data over graphsync for validated push requests (#665)

* create channels when a request is received. register push request hook with graphsync. fix tests.
* better NewReaders
* use mutex lock around impl.channels access
* fix(datatransfer): fix test uncertainty
* fix a data race and also don't use random bytes in basic block which can fail
* privatize 3 funcs

with @hannahhoward

Feat/dt gs pullrequests (#693)

* Implements DTM Sends Data Over Graphsync For Validated Pull Requests
* rename a field in a test struct
* refactor a couple of private functions (one was refactored out of existence)

Feat/dt subscribe, file Xfer round trip (#720)

Implements the rest of Subscriber Is Notified When Request Completed #24:
* send a graphsync message within a go func and consume responses until error or transfer is complete.
* notify subscribers of results.
* Rename datatransfer.Event to EventCode.
* datatransfer.Event is now a struct that includes a message and a timestamp as well as the Event.Code int, formerly Event, update all uses
* Add extension data to graphsync request hook, gsReq
* rename sendRequest to sendDtRequest, to distinguish it from sendGsRequest, where Dt = datatransfer, Gs = graphsync
* use a mutex lock for last transfer ID
* obey the linter

Don't respond with error in gsReqRcdHook when we can't find the datatransfer extension. (#754)

* update to correct graphsync version, update tests & code to call the new graphsync hooks
* getExtensionData returns an empty struct + nil if we can't find our extension
* Don't respond with error when we can't find the extension.
* Test for same
* mod tidy

minor fix to go.sum

feat(datatransfer): switch to graphsync implementation

Move over to real graphsync implementation of data transfer, add constructors for graphsync
instances on client and miner side

fix(datatransfer): Fix validators

Validators were checking payload cid against commP -- which are not the same any more. Added a
payloadCid to client deal to maintain the record, fixed validator logic

Feat/dt extraction use go-fil-components/datatransfer (#770)

* Initial commit after changing to go-fil-components/datatransfer
* blow away the datatransfer dir
* use go-fil-components master after its PR #1 was merged
* go mod tidy

use a package

updates after rebase with master
2020-01-08 14:19:28 +01:00
Łukasz Magiera
117bea4e4e
Merge pull request #1030 from filecoin-project/feat/chain-list-messages
implement list-messages command
2020-01-08 13:50:55 +01:00
Łukasz Magiera
86a22a3896
Merge pull request #1029 from filecoin-project/feat/mpoolpush-cid
mpool: Return CID in MpoolPush
2020-01-08 13:43:03 +01:00
whyrusleeping
95a89ad192 implement list-messages command 2020-01-08 13:41:23 +01:00
whyrusleeping
897cf72933 Add command to mark given blocks as bad 2020-01-07 21:42:15 -08:00
whyrusleeping
62db7a6dda fix build 2020-01-07 21:10:43 -08:00
Łukasz Magiera
a11e8093e5 mpool: Return CID in MpoolPush 2020-01-07 21:10:30 -08:00
laser
841f9c3627 reorganize imports to pass linter 2020-01-07 08:23:12 -08:00
laser
20321bb476 handle rebase 2020-01-07 08:18:35 -08:00
acruikshank
7873213b11 switch sectorbuilder from lib to external module
point to correct version of sectorbuilder + ensure go-datastore stays at 0.1.1

replace local address type with go-address

consume paramfetch.GetParams instead of local paramfetch.go

remove constants now defined in sectorbuilder
2020-01-07 07:48:43 -08:00
Łukasz Magiera
1e7f10e387 gofmt 2020-01-07 15:00:10 +01:00
hannahhoward
718acb0a86 refactor(cborutil): extract cborutil library
Use extracted cborutil library
2020-01-07 14:59:35 +01:00
hannahhoward
8418464d91 refactor(address): use extracted address library
Switch to using extracted address library
2020-01-07 14:53:27 +01:00
laser
6a740a6d67 consume newly-extracted paramfetch 2020-01-02 11:08:49 -08:00
whyrusleeping
e5899f614a Tag peers who send us good blocks over pubsub 2019-12-19 12:47:55 -08:00
Łukasz Magiera
81233b894d Implement 'chain get' for easier ipld digging 2019-12-19 17:58:02 +01:00
Łukasz Magiera
a4521955d5 libp2p: enable ping 2019-12-18 20:33:13 +01:00
Łukasz Magiera
41566f205a connmgr: bring low/high water values closer 2019-12-18 16:38:58 +01:00
whyrusleeping
619e6ffdd7 fix master build 2019-12-17 14:20:37 -08:00
Whyrusleeping
31327a383f
Merge pull request #948 from filecoin-project/feat/sybill-fun
Basic sybill resistance mechanisms
2019-12-17 20:45:45 +01:00
whyrusleeping
ff5b086f58 mark bootstrap peers as protected 2019-12-17 11:18:19 -08:00
whyrusleeping
6cb6167393 bump up filecoin related weights 2019-12-17 10:16:10 -08:00
whyrusleeping
ca7e2e76c2 drop miner tagger logic as it doesnt do what we want it to 2019-12-17 10:16:10 -08:00
Łukasz Magiera
8284436eae Setup PeerTagger as Invoke 2019-12-17 17:28:02 +01:00
Łukasz Magiera
241c7c7ecc Wire up ConnMgr config 2019-12-17 17:09:43 +01:00
Jakub Sztandera
0eb7991bbd
Fix version check
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2019-12-17 16:26:16 +01:00
Łukasz Magiera
11d11c88ae
Revert "Refactor versions" 2019-12-17 16:16:57 +01:00
whyrusleeping
535916e54b fix log messages 2019-12-16 23:27:02 -08:00
whyrusleeping
7dcc528cd1 tag peers who propagate good blocks to us 2019-12-16 23:06:48 -08:00
whyrusleeping
022581d50b add routine to tag miners peer IDs as high value in connection manager 2019-12-16 22:51:41 -08:00
whyrusleeping
28b470cb0d blocksync tagging 2019-12-16 22:15:06 -08:00
whyrusleeping
eb4077b1af allow specifying some protected peers in the config file 2019-12-16 21:37:31 -08:00
Jakub Sztandera
867cba610b
Refactor versions
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2019-12-17 00:43:43 +01:00
Łukasz Magiera
3fda442bb3
Merge pull request #934 from filecoin-project/feat/sb-diskmgr
sectorbuilder: Check free space before creating sectors
2019-12-16 21:37:18 +01:00
Łukasz Magiera
3892e94bfe
Merge pull request #938 from filecoin-project/feat/load-tipset-cache
cache load tipset
2019-12-16 21:13:03 +01:00
whyrusleeping
6e94377469 cache load tipset 2019-12-16 11:22:56 -08:00
Łukasz Magiera
f297409d6d
Merge pull request #936 from filecoin-project/feat/cleanup-logspam
clean up some log spam
2019-12-16 18:17:14 +01:00
whyrusleeping
99eae286c2 clean up some log spam 2019-12-16 09:14:21 -08:00
Łukasz Magiera
825e3a0774 sectorbuilder: check free space before creating sectors 2019-12-16 17:16:08 +01:00
Łukasz Magiera
5154f525d3 config: don't comment sections be default 2019-12-16 12:46:52 +01:00
jsign
40289848c6
client: make wallet addr be a param in ClientStartDeal
Signed-off-by: jsign <jsign.uy@gmail.com>
2019-12-13 16:15:56 -03:00
Łukasz Magiera
cf9edae000
Merge pull request #878 from filecoin-project/feat/cw-sset-counts
chainwatch: Collect sector set sizes
2019-12-12 17:32:12 +01:00
Łukasz Magiera
fc6073d13b chainwatch: Collect sector set sizes 2019-12-12 00:32:09 +01:00
Jakub Sztandera
c9eed9635b
Fix hello calling close before compleating timestamp exchange
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2019-12-11 22:18:22 +01:00
Jakub Sztandera
86feebc899
Fix timeoffset hello calculation
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2019-12-11 16:36:08 +01:00
Łukasz Magiera
edd40895b8 disable head notifs by default 2019-12-11 16:08:50 +01:00
whyrusleeping
d6bfbe5a26 allow setting genesis timestamp when initializing network 2019-12-11 15:36:39 +01:00
Łukasz Magiera
ce6912047d Change pnet key 2019-12-10 23:11:45 +01:00
Jakub Sztandera
32b429a69a
Disconnect if hello fails
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2019-12-10 22:09:48 +01:00
Łukasz Magiera
88f46d4539 Fix node_test 2019-12-10 19:13:45 +01:00
Jakub Sztandera
f528aed598
Add offset tracking
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2019-12-10 16:58:21 +01:00
Jakub Sztandera
a53d1031db
Fix nil check
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2019-12-10 16:36:53 +01:00
Jakub Sztandera
9d9040558f
Collect hello message latency
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2019-12-10 16:36:48 +01:00
whyrusleeping
e27217c6a1 fix sync tests 2019-12-09 22:17:15 +01:00
Łukasz Magiera
f16756cc54
Merge pull request #820 from filecoin-project/fix/multi-miner-genesis-init
Fix/multi miner genesis init
2019-12-09 21:34:51 +01:00
Łukasz Magiera
d750723405 Merge remote-tracking branch 'origin/testnet-staging' into feat/cleanup-sectorstate-structs 2019-12-09 21:27:20 +01:00
whyrusleeping
b444771427 setup enough fake peer IDs for miner generation 2019-12-09 19:56:55 +01:00
Łukasz Magiera
0de9991dcd
Merge pull request #816 from filecoin-project/feat/api-cleanup
Move api struct to a seprate pkg
2019-12-09 18:33:13 +01:00
Łukasz Magiera
44f3a501ab
Merge pull request #783 from filecoin-project/fix/bad-epost-mining
Fix/bad epost mining
2019-12-09 18:27:24 +01:00
Łukasz Magiera
c49dc28a04 Move api struct to a seprate pkg 2019-12-09 18:22:11 +01:00
Jakub Sztandera
1a2401a816
Add short tests
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2019-12-09 17:49:30 +01:00
Łukasz Magiera
94df2c656e Use map encoders for some structs 2019-12-09 17:40:15 +01:00
Łukasz Magiera
7d68d9a029 storage: print sector retries in sector info 2019-12-08 23:35:46 +01:00
Łukasz Magiera
ef0d45e406 storage: addres review around nonces in sector states 2019-12-08 23:35:46 +01:00
Łukasz Magiera
55c1432347 Handle reverts in precommit more correctly 2019-12-08 23:35:46 +01:00
Jakub Sztandera
7f537dce2d
More renames
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2019-12-08 22:48:20 +01:00
whyrusleeping
d3f08c5243 remove more spammy logs 2019-12-07 23:32:34 +01:00
whyrusleeping
d8d7827579 other peer having different genesis is now a warning 2019-12-07 23:16:39 +01:00
Łukasz Magiera
83924e6b97
sectorbuilder: Allow to restrict task types
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2019-12-07 19:05:15 +01:00
whyrusleeping
e6a08784f8 print more errors if epost fails during tipset state evaluation 2019-12-07 17:24:42 +01:00
Jakub Sztandera
92e7b4afbf
Fix tests, circle and make ux nicer
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2019-12-06 22:49:44 +01:00
Jakub Sztandera
d53e43c24d
Fix test, improve log
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2019-12-06 19:47:55 +01:00
Łukasz Magiera
6f024bee58
Merge pull request #736 from filecoin-project/feat/params-v20
Params v20
2019-12-05 14:03:37 +01:00
Łukasz Magiera
3673a9110f
Merge pull request #743 from filecoin-project/feat/static-check-2
more of that sweet staticcheck goodness
2019-12-05 12:21:43 +01:00
whyrusleeping
b7a89b56b3 more statticcheck! 2019-12-04 21:14:19 -08:00
whyrusleeping
df069af5e5 some errcheck discoveries 2019-12-04 21:02:14 -08:00
whyrusleeping
40be53c9f9 add command for power users to manually update sector state 2019-12-04 20:43:54 -08:00
whyrusleeping
613a0a05a0 more of that sweet staticcheck goodness 2019-12-04 18:04:09 -08:00
Łukasz Magiera
3daf9103a8 paramfetch: Only pull necessary params 2019-12-04 20:44:15 +01:00
Łukasz Magiera
b2001db9d5 worker: Fix rebaining bugs 2019-12-04 17:53:32 +01:00
Łukasz Magiera
28dde1a2d3 worker: Use system tar for moving cache around 2019-12-04 15:58:28 +01:00
Łukasz Magiera
edd30c7aa1 Merge branch 'master' into feat/remote-workers 2019-12-04 14:10:15 +01:00
whyrusleeping
c302051bc2 add duration tracking to sync status 2019-12-03 20:59:41 -08:00
Łukasz Magiera
d112fd18b1 Persist sector sealing errors 2019-12-04 01:44:29 +01:00
whyrusleeping
d0448287a9 remove unnecessary code 2019-12-03 12:05:54 -08:00
Łukasz Magiera
2d28bcf057 Allow calling MpoolPending with nil TS 2019-12-03 20:34:31 +01:00
Łukasz Magiera
96c04fc0a6 mpool: Make MpoolPending more atomic 2019-12-03 20:33:29 +01:00
whyrusleeping
9ad4a00cda fix miner message filter nonce checking 2019-12-03 13:38:50 +01:00
Łukasz Magiera
160e11ce8c Merge branch 'master' into feat/remote-workers 2019-12-03 03:24:00 +01:00
Łukasz Magiera
ad27131dcf fix node_test 2019-12-03 02:41:31 +01:00
whyrusleeping
68e25b36f1 rename to avoid stuttering 2019-12-02 14:33:11 -08:00
whyrusleeping
b58e7344e8 pull messagepool into separate package 2019-12-02 14:33:11 -08:00
whyrusleeping
8da3cc875e Fix message nonce tracking during head changes 2019-12-02 14:33:11 -08:00
Łukasz Magiera
923748e551 Expand paths in node init 2019-12-02 23:10:22 +01:00