Commit Graph

420 Commits

Author SHA1 Message Date
whyrusleeping
9763810100 cleaup, small refactor 2019-09-17 19:55:51 -07:00
whyrusleeping
b1e77748e7 scaffolding and refactoring to make post scheduler work 2019-09-17 19:50:03 -07:00
whyrusleeping
cc877f5c04 WIP: expanding API to serve post producer needs 2019-09-17 17:08:49 -07:00
whyrusleeping
11040f105b WIP: post scheduling 2019-09-17 15:51:46 -07:00
Whyrusleeping
e244171cd9
Merge pull request #200 from filecoin-project/feat/post2
Add BitField with RLE
2019-09-18 04:45:38 +10:00
Łukasz Magiera
b33c1e1310
Merge pull request #201 from filecoin-project/feat/pond-stopstart
Graceful node shutdown, pond node stopping
2019-09-17 20:45:18 +02:00
Jakub Sztandera
f5a2d998bf Add BitField with RLE
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protonmail.ch>
2019-09-17 11:24:11 -07:00
Whyrusleeping
0f92df7b06
Merge pull request #199 from filecoin-project/feat/serialization-3
final chain serialization bits
2019-09-18 04:21:55 +10:00
whyrusleeping
e7b642f1ff fix import grouping 2019-09-17 11:09:22 -07:00
Whyrusleeping
cf257ae773
Update chain/sync.go
Co-Authored-By: Łukasz Magiera <magik6k@users.noreply.github.com>
2019-09-18 04:08:03 +10:00
Łukasz Magiera
7f68fa9567 Fix tests 2019-09-17 16:45:09 +02:00
Łukasz Magiera
83f1a336a6 node: Basic graceful shutdown 2019-09-17 16:23:08 +02:00
Łukasz Magiera
8f84aa7097 Fix stmgr.GetMinerPeerID 2019-09-17 10:34:41 +02:00
Łukasz Magiera
5ea1459275 Use atomic moppl API in more places 2019-09-17 10:15:26 +02:00
Łukasz Magiera
567ae92ff2 Move more logic into statemanager 2019-09-17 10:00:38 +02:00
whyrusleeping
8d2bcc5e3d final chain serialization bits 2019-09-16 18:56:37 -07:00
Łukasz Magiera
f8a2ecaf52 gofmt; mod tidy 2019-09-16 23:26:19 +02:00
Łukasz Magiera
9fe198dc6f retrieval: payment validation 2019-09-16 23:25:23 +02:00
Łukasz Magiera
c275d1fb6a deals: call 'complete' handler 2019-09-16 20:08:24 +02:00
Łukasz Magiera
eda72468ce Sector Commitment tracker 2019-09-16 20:08:24 +02:00
Łukasz Magiera
1e07a12a2e More atomic mpool APIs 2019-09-16 20:08:23 +02:00
whyrusleeping
1075c9a5e0 implement ask query protocol 2019-09-13 16:49:27 -07:00
Łukasz Magiera
bc9f495440 deals: Check WainMsg error in handler 2019-09-13 22:50:07 +02:00
Łukasz Magiera
1ba1df3cac deals: don't throw away failed deals 2019-09-13 21:43:33 +02:00
Łukasz Magiera
9c276e5331 deals: Split state store 2019-09-13 21:19:13 +02:00
Łukasz Magiera
08ea758216 deals: 'fix' struct serialization 2019-09-13 20:19:49 +02:00
Łukasz Magiera
0406705490 vm: fix ReadState 2019-09-13 20:16:39 +02:00
Łukasz Magiera
6a31ff2f2e deals: Wait for channel messagi in handler 2019-09-13 19:59:10 +02:00
Łukasz Magiera
1fc7a48759 deals: API to list client deals 2019-09-13 19:59:10 +02:00
Łukasz Magiera
388e3ffa96 paych: Api to reuse open channels for new payments 2019-09-13 19:59:10 +02:00
Łukasz Magiera
72a406ec7e deals: Better client deal tracking 2019-09-13 19:59:10 +02:00
whyrusleeping
c7ad08c565 check block signatures during sync 2019-09-11 13:12:49 -07:00
whyrusleeping
fe2885382c self review, cleanup 2019-09-10 17:13:46 -07:00
whyrusleeping
a47969c76b finish up making the new serializations work 2019-09-10 16:03:17 -07:00
whyrusleeping
2f019158d0 more switching over to correct cbor marshaling 2019-09-10 12:58:45 -07:00
whyrusleeping
1f1bbc9b8d cbor gen types and cleaning up after 2019-09-09 19:53:18 -07:00
whyrusleeping
b5bd1820d9 WIP: vm perf improvements 2019-09-09 19:53:17 -07:00
whyrusleeping
512da42cde address review feedback 2019-09-09 19:14:27 -07:00
Whyrusleeping
3ab711d133 Update chain/stmgr/stmgr.go
Co-Authored-By: Łukasz Magiera <magik6k@users.noreply.github.com>
2019-09-09 19:14:27 -07:00
whyrusleeping
bc7f86ef05 self review, cleanup 2019-09-09 19:14:27 -07:00
whyrusleeping
74f68dc630 perform tipset expansion on sync and fix tipset comparison 2019-09-09 19:14:27 -07:00
whyrusleeping
b5462542a8 fix tests and fix a bug in blocksync 2019-09-09 19:14:26 -07:00
whyrusleeping
ed45d1c2b4 refactor state utilities into StateManager package, implement proper election proofs 2019-09-09 19:14:00 -07:00
whyrusleeping
6e21372ccb initial refactor for creating tipsets with multiple parents 2019-09-09 19:12:32 -07:00
Łukasz Magiera
4a5aa680ae deals: Address review 2019-09-09 21:21:37 +02:00
Łukasz Magiera
819e9a939d gofmt; mod tidy 2019-09-09 18:02:57 +02:00
Łukasz Magiera
19ec43d7fd deals: Store inclusion proofs in paychmgr 2019-09-09 16:00:50 +02:00
Łukasz Magiera
5200a37349 paychmgr: store proofs with vouchers 2019-09-09 15:59:07 +02:00
Łukasz Magiera
8b29c98919 paych actor: pass verification errors 2019-09-09 15:55:06 +02:00
Łukasz Magiera
83932a7c80 miner actor: Pass correct bytes to VerifyPieceInclusionProof 2019-09-09 15:50:52 +02:00
Łukasz Magiera
a1bcc826ac Fix amt.ErrNotFound handling in actor_miner 2019-09-09 13:22:09 +02:00
Łukasz Magiera
0b87411c7d Use AMT in StorageMinerActor ctor 2019-09-07 00:42:01 +02:00
Łukasz Magiera
4acf6d9d47 Partial payment integration in deals 2019-09-07 00:42:01 +02:00
Łukasz Magiera
2e7fb42a48 types: Better bigint error 2019-09-07 00:42:01 +02:00
Łukasz Magiera
b42164f76d mpool: Don't return nil from Pending 2019-09-07 00:42:01 +02:00
Łukasz Magiera
314141e4ea Set timestamp in miner 2019-09-07 00:42:01 +02:00
Łukasz Magiera
c034f0d763
Merge pull request #179 from filecoin-project/feat/events
Chain event helper
2019-09-05 11:25:24 +02:00
Łukasz Magiera
4fa37e7884 chain events: More docs 2019-09-05 10:27:08 +02:00
Łukasz Magiera
59fb84e77e chain events: NoTimeout const 2019-09-05 09:58:50 +02:00
Łukasz Magiera
611ea02cea chain events: More logical apply order 2019-09-05 09:57:18 +02:00
Łukasz Magiera
caed73ef6c chain events: Move to chain/events 2019-09-05 09:40:50 +02:00
Łukasz Magiera
50960b3f8c chain events: Separate heightEvents from main struct 2019-09-05 09:36:11 +02:00
Łukasz Magiera
519eed9290 chain events: Annotate types for readability 2019-09-05 09:31:16 +02:00
Jakub Sztandera
b3d881117d
Merge pull request #178 from filecoin-project/feat/fuzz
Fuzz message
2019-09-05 09:21:21 +02:00
Łukasz Magiera
afcb35e969 chain events: Make CalledHandler revert aware 2019-09-04 22:22:25 +02:00
Łukasz Magiera
f02119168e chain events: Make messagesForTs more robust 2019-09-04 22:01:06 +02:00
Łukasz Magiera
e4c73e9fd2 chain events: Timeouts, cancellation 2019-09-04 21:41:34 +02:00
Łukasz Magiera
56b5574a72 chain events: Fix some edge cases 2019-09-04 20:56:51 +02:00
Łukasz Magiera
289470a466 chain events: Restructure the logic 2019-09-04 18:09:08 +02:00
Łukasz Magiera
4d0d51b58c chain events: split headChange 2019-09-03 19:59:32 +02:00
Łukasz Magiera
5f88ceb965 basic chain event impl 2019-09-03 19:45:55 +02:00
Jakub Sztandera
5400547a5f Fuzz message
I had to move Verify function into separate file to tag it as `cgo` only
build. go-fuzz doesn't work with cgo.

License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protonmail.ch>
2019-09-02 15:36:31 +02:00
whyrusleeping
cc9b638788 use wait func in other test 2019-08-30 18:11:32 -07:00
whyrusleeping
d0d7d259b6 fix ChainNotify 2019-08-30 18:03:10 -07:00
whyrusleeping
d7ab382c8c add (currently broken) testutil sync wait 2019-08-30 16:44:22 -07:00
whyrusleeping
054f0fc0ef trying to hack together automated benchmarks submission
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protonmail.ch>
2019-08-30 15:47:22 -07:00
Łukasz Magiera
57d0f7c722
Merge pull request #162 from filecoin-project/feat/retrieval
Retrieval
2019-08-31 00:29:00 +02:00
Whyrusleeping
b0d0af603c
Merge pull request #167 from filecoin-project/feat/timestamping
Add proper timestamping and checking of timestamps
2019-08-30 14:23:55 -07:00
Whyrusleeping
7bf4ad8d9c
Merge pull request #171 from filecoin-project/feat/gas5
Charge per byte of object get
2019-08-30 11:23:02 -07:00
Whyrusleeping
7df6417ba8
Merge pull request #169 from filecoin-project/fix/msg-wait-panic
handle channel closing properly
2019-08-30 11:22:11 -07:00
Jakub Sztandera
e6b83d9428 Charge per byte of object get
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protonmail.ch>
2019-08-30 18:05:54 +02:00
Łukasz Magiera
67e780825b Merge remote-tracking branch 'origin/master' into feat/retrieval 2019-08-30 13:25:03 +02:00
whyrusleeping
6144f1af73 handle channel closing properly 2019-08-29 20:25:31 -07:00
whyrusleeping
b69557251c Add proper timestamping and checking of timestamps 2019-08-29 19:59:54 -07:00
Łukasz Magiera
6b80b98c64 retrieval: fix actor tests 2019-08-29 21:01:29 +02:00
Łukasz Magiera
711c61cba1 Merge remote-tracking branch 'origin/master' into feat/retrieval 2019-08-29 20:59:03 +02:00
Jakub Sztandera
a8e03d8a69 Charge gas per msg byte
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protonmail.ch>
2019-08-29 20:34:53 +02:00
Jakub Sztandera
5c31b81701 Charge per byte of storage
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protonmail.ch>
2019-08-29 20:34:53 +02:00
Łukasz Magiera
fe6d5ff3a8 retrieval: resolve some TODOs 2019-08-29 17:51:52 +02:00
Łukasz Magiera
c437b6884d retrieval: gofmt 2019-08-29 17:51:52 +02:00
Łukasz Magiera
a6914309a6 retrieval: 'fix' GetPIP in handler 2019-08-29 17:51:06 +02:00
Łukasz Magiera
6714240653 SectorSize const 2019-08-29 17:50:19 +02:00
Łukasz Magiera
be30bc79a5 Retrieval works! 2019-08-29 17:50:19 +02:00
Łukasz Magiera
28d3eb38eb basic retrieval content discovery 2019-08-29 17:48:19 +02:00
Łukasz Magiera
cad3efb9ba Command to list sealed blocks 2019-08-29 17:48:19 +02:00
Łukasz Magiera
9691211df1 Sealed blockstore 2019-08-29 17:48:19 +02:00
whyrusleeping
2013db604a switch to using AMT for sector set 2019-08-28 17:01:46 -07:00
Jakub Sztandera
24fb5ca624
Merge pull request #160 from filecoin-project/feat/gas3
Charge per put and get
2019-08-27 22:45:38 +02:00
Jakub Sztandera
494ed768ba Cleanup lint
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protonmail.ch>
2019-08-27 22:40:30 +02:00
Jakub Sztandera
349d9a2fad Reenable test
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protonmail.ch>
2019-08-27 22:31:58 +02:00
Jakub Sztandera
8557505cbd Charge per put and get
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protonmail.ch>
2019-08-27 17:01:17 +02:00
whyrusleeping
ccdc1575d6 add signatures to blocks 2019-08-26 17:46:39 -07:00
Whyrusleeping
07be1ad900
Merge pull request #155 from filecoin-project/feat/cbor-marshal-2
Codegen for faster cbor marshaling
2019-08-26 10:35:52 -07:00
Łukasz Magiera
78bfcce907 Fix mining after typecode changes to signatures 2019-08-26 10:46:01 +02:00
whyrusleeping
dd2a217940 remove spurious debug logs 2019-08-22 12:53:32 -07:00
whyrusleeping
8dd16e3bed some cleanup post PR submission 2019-08-22 12:53:32 -07:00
whyrusleeping
7eb89f90d1 Replace most marshaling with codegen 2019-08-22 12:53:32 -07:00
whyrusleeping
53be71fb73 Start using codegen 2019-08-22 12:53:32 -07:00
whyrusleeping
357c49eed8 Add cbor marshaling fastpath methods on several types 2019-08-21 18:29:56 -07:00
Łukasz Magiera
834837690b placeholder tipset.Weight implementation 2019-08-22 01:24:59 +02:00
Jakub Sztandera
0c3e8949c1 Introduce gas tracking in harness
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protonmail.ch>
2019-08-21 23:29:47 +02:00
whyrusleeping
7c7a15d40c fix putting the wrong items into the receipts tree for verification 2019-08-21 10:40:28 -07:00
Łukasz Magiera
eda26faf21 Register miner address from storageminer process 2019-08-20 19:19:24 +02:00
Łukasz Magiera
82c449c047 fix sync_test.go 2019-08-20 18:51:10 +02:00
Łukasz Magiera
4431dffc39 miner: Create miner in DI 2019-08-20 18:50:17 +02:00
whyrusleeping
4f91550851 fix waiting for bls signed message 2019-08-16 15:10:34 -07:00
whyrusleeping
b271e5231a set up lotus-storage-miner to be able to use an existing miner actor 2019-08-16 14:50:00 -07:00
whyrusleeping
d9eaca5527 fix UpdateStorage to write back state 2019-08-16 13:24:37 -07:00
whyrusleeping
b2d425b891 TEMP: accept miner address from cli 2019-08-16 12:39:13 -07:00
whyrusleeping
f7dc253669 (mostly) proper ticket generation 2019-08-16 12:39:13 -07:00
whyrusleeping
5a7f59498e Wire up more proper ticket generation and verification logic 2019-08-16 12:39:12 -07:00
whyrusleeping
2efab559ec add error wraps and fix tests 2019-08-16 12:39:12 -07:00
whyrusleeping
e9d1f3e7c9 WIP: base mining on power and VRFs 2019-08-16 12:39:12 -07:00
Whyrusleeping
608885f87d
Merge pull request #136 from filecoin-project/fix/best-tip-init
ensure best tipset is set during genesis init
2019-08-16 10:44:55 -07:00
Jakub Sztandera
5d7c20c0b1
Merge pull request #142 from filecoin-project/feat/gas
Initial gas charning
2019-08-16 15:29:05 +02:00
Jakub Sztandera
f6387da969 Fix misspell
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protonmail.ch>
2019-08-16 14:46:42 +02:00
Łukasz Magiera
77c9112b10 invoker: sort imports 2019-08-16 14:11:57 +02:00
whyrusleeping
6ae38740a1 add warning if no tipset found 2019-08-15 21:51:50 -07:00
whyrusleeping
e2dc8c8cee ensure best tipset is set during genesis init 2019-08-15 21:50:40 -07:00
Łukasz Magiera
1e9898f844 gofmt 2019-08-16 04:34:23 +02:00
Łukasz Magiera
3327781e60 chain: Better ReadState 2019-08-16 04:33:59 +02:00
Łukasz Magiera
e8faa77d59 init actor: Fix doubling the balance 2019-08-15 23:03:47 +02:00
Łukasz Magiera
760ebc341f storageminer: Split PaymentVerify into 2 methods 2019-08-15 22:57:14 +02:00
Jakub Sztandera
27057ee222 initial gas charning
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protonmail.ch>
2019-08-15 18:24:06 +02:00
Łukasz Magiera
eb962940bd deals: wire up PaymentVerify 2019-08-15 17:04:40 +02:00
Łukasz Magiera
fc69556817 storageminer: Fix PaymentVerify interface 2019-08-15 16:07:45 +02:00
Łukasz Magiera
1579137236 storageminer: Initial PaymentVerify implementation 2019-08-15 15:52:14 +02:00
Łukasz Magiera
4c5ffb185e deals: setup payment channel for deals 2019-08-15 02:28:52 +02:00
Łukasz Magiera
1ed701db18
Merge pull request #138 from filecoin-project/feat/sectorstore
Sector Store
2019-08-15 01:10:45 +02:00
Łukasz Magiera
399f91940b Sector store 2019-08-14 22:27:32 +02:00
whyrusleeping
9fbcbc1ac8 bls message signature verification 2019-08-13 21:43:29 -07:00
Whyrusleeping
e050d56594
Merge pull request #132 from filecoin-project/feat/paych-manager
Implement payment channel manager
2019-08-13 12:13:23 -07:00
Łukasz Magiera
3a7a21ee83
Merge pull request #134 from filecoin-project/feat/more-deals
More deals progress
2019-08-13 19:32:58 +02:00
whyrusleeping
12acee5242 add payment channel CLI and finish up commands 2019-08-12 21:27:54 -07:00
Łukasz Magiera
9733e1f011 deals: use GetWorkerAddr 2019-08-13 01:54:53 +02:00
Łukasz Magiera
94044b40a2 pond: subcommands to run cmds on nodes 2019-08-13 01:09:08 +02:00
Łukasz Magiera
5ab1b1caaf deals: Sealing handler 2019-08-12 23:48:28 +02:00
whyrusleeping
ae34757e2a pull chain call into its own method and fix paych module 2019-08-12 11:30:20 -07:00
whyrusleeping
6979c28e05 Add API interface for payment channels and a few tests 2019-08-12 10:12:51 -07:00
Łukasz Magiera
22611f9226 remove missed log in msgpool 2019-08-12 19:09:32 +02:00