Łukasz Magiera
0f0015f45c
Merge pull request #1520 from filecoin-project/feat/graphsync-chainsync-extension
...
Update to latest go-fil-markets w/ enhanced Graphsync
2020-04-10 20:27:05 +02:00
Łukasz Magiera
b0fe8b8b4c
v25: get bench to almost work
2020-04-10 14:19:06 +02:00
Łukasz Magiera
70d654e4a6
Merge pull request #1527 from filecoin-project/feat/drand
...
Initial randomness beacon implementation
2020-04-09 19:48:09 +02:00
Jeromy
09b013b7a5
close resp chan
2020-04-09 10:35:43 -07:00
Jeromy
ac271b021d
finish addressing review
2020-04-09 10:13:09 -07:00
Jakub Sztandera
7ee6388686
Make drand build
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-04-09 14:39:51 +02:00
Jeromy
1a3ab63e47
WIP: drand client integration
2020-04-08 19:55:17 -07:00
Jeromy
c5c18659a4
address some review
2020-04-08 17:24:10 -07:00
Jeromy
ef6fb1b756
rename beacon to randombeacon
2020-04-08 16:10:08 -07:00
Aayush Rajasekaran
17e9feb633
Sever the API's dependency on VM
2020-04-08 18:27:31 -04:00
Jakub Sztandera
1bd28bdb6a
Fix lint errors
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-04-08 21:37:04 +02:00
Jakub Sztandera
661d373fa2
Fix blockheader tests
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-04-08 21:27:55 +02:00
Jakub Sztandera
d71ba5039b
Merge branch 'feat/drand' of github.com:filecoin-project/lotus into feat/drand
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-04-08 21:08:35 +02:00
Jakub Sztandera
ce4978d8c3
Reintroduce correct ticket randomness alongside ElectionProof
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-04-08 21:06:41 +02:00
Jeromy
be85f2aff7
handle beacon gaps
2020-04-08 10:49:50 -07:00
Jakub Sztandera
9a17beba9e
Skip block header test vectors
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-04-08 18:48:47 +02:00
Jakub Sztandera
f1c890ca54
Tests pass
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-04-08 18:31:16 +02:00
Jeromy
8e0ca306d2
more wiring up of drandomness
2020-04-08 08:11:42 -07:00
hannahhoward
00cd89750d
feat(deps): update fil-markets, graphsync
...
Updates dependencies for graphsync, fil-markets, data-transfer. Moves to new graphsync blockstore
swapping capabilities, and also locks down graphsync impl so it does not accept arbitrary requests
2020-04-07 23:25:29 -07:00
Jeromy
056284c00b
wip: chain sync winner check
2020-04-07 15:54:01 -07:00
Jakub Sztandera
9fd1b95fd5
Fix build errors
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-04-07 15:32:23 -07:00
Jakub Sztandera
9c250f24fa
Nex wip
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-04-07 15:32:23 -07:00
Jakub Sztandera
afdb1db529
drand wip
...
,
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-04-07 15:32:23 -07:00
Jeromy
7075eaba26
WIP: random beacon interface
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-04-07 15:32:23 -07:00
Łukasz Magiera
086a66efc9
Merge pull request #1517 from filecoin-project/feat/lotus-agnostic-node-interface
...
remove lotus types from sealing package in preparation for extraction
2020-04-07 00:42:30 +02:00
Łukasz Magiera
4ee8254133
Merge pull request #1510 from filecoin-project/feat/fsm-updates
...
FSM Updates
2020-04-06 23:11:46 +02:00
laser
2f4732760a
update CBOR encoders/decoders
2020-04-06 13:35:29 -07:00
Jeromy
3ad16c58d7
cache address resolutions in state tree
2020-04-06 12:32:22 -07:00
Łukasz Magiera
68fa9f20c3
Merge pull request #1511 from filecoin-project/fix/runtime-exit-edge-cases
...
handle some runtime error edge cases
2020-04-06 20:34:22 +02:00
Łukasz Magiera
f05be81275
fsm: Get correct interactive randomness if it lands on a nullblock
2020-04-04 04:57:05 +02:00
Jeromy
bb6e8de056
cache address resolutions in state tree
2020-04-03 16:26:52 -07:00
Jeromy
ab51501849
remove todo
2020-04-03 15:50:52 -07:00
Jeromy
2d5becaaba
further removals
2020-04-03 15:05:59 -07:00
Jeromy
4c6fa1b2c0
handle some runtime error edge cases
2020-04-03 14:38:11 -07:00
Łukasz Magiera
a1b35aa9d5
Change api.SectorState to a string
2020-04-03 18:29:31 +02:00
Jeromy
7a475d5ca5
drop outdated comment
2020-04-02 18:52:18 -07:00
Jeromy
89b15c03cf
nil out layers when dropping to allow for GC
2020-04-02 18:20:49 -07:00
Jeromy
212c346c21
avoid flushing disk when doing state tree snapshots
2020-04-02 17:18:25 -07:00
Łukasz Magiera
11777c5f24
Merge pull request #1502 from filecoin-project/feat/import-bench
...
add a command to lotus-bench to benchmark importing and validating
2020-04-03 01:30:12 +02:00
Jeromy
beaa3dffab
add a command to lotus-bench to benchmark importing and validating a chain
2020-04-02 16:18:38 -07:00
Jeromy
8a265a0e8d
use exitcode type from specs actors instead of byte
2020-04-02 11:24:38 -07:00
whyrusleeping
aa23266c6f
use gas used in block rewards
2020-04-01 21:16:16 -07:00
Jeromy
fe1d61b276
also use correct set when validating blocks
2020-04-01 18:39:38 -07:00
Jeromy
c55501024e
remove hacky bits
2020-04-01 18:25:58 -07:00
Jeromy
5b9ee1dea9
Add GetMiningBaseInfo api and use it for mining
2020-04-01 18:15:25 -07:00
Łukasz Magiera
f15eb8b172
Merge pull request #1487 from filecoin-project/fix/partial-sync-responses
...
properly handle partial sync responses
2020-04-02 00:03:25 +02:00
Łukasz Magiera
7ef08bfbdf
Merge pull request #1490 from filecoin-project/fix/charge-gas
...
Fix charge gas in case of overcharge
2020-04-01 23:00:28 +02:00
Jakub Sztandera
013f441658
Fix charge gas in case of overcharge
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-04-01 22:55:10 +02:00
Jakub Sztandera
d88c2f8a43
Add Replace by Fee
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-04-01 22:26:14 +02:00
Jeromy
27d57264d9
properly handle partial sync responses
2020-04-01 11:35:09 -07:00
Łukasz Magiera
f6c260c49f
Merge pull request #1484 from filecoin-project/fix/interop-improvements
...
several fixes and improvements while debugging interop
2020-04-01 17:51:42 +02:00
Łukasz Magiera
cdd97ce959
Revert ticket compare function to comparing vrf hashes
2020-04-01 17:44:51 +02:00
Jeromy
417d434973
several fixes and improvements while debugging interop
2020-03-31 18:35:23 -07:00
Łukasz Magiera
13f2c21e1d
Get network name from genesis
2020-04-01 01:15:49 +02:00
Aayush Rajasekaran
8ec19812e3
Update chain-validation, enable state root validation
2020-03-31 03:09:42 -04:00
Łukasz Magiera
95ee1c1cde
Extract sector-storage
2020-03-28 01:32:39 +01:00
Łukasz Magiera
c66d3dfad7
sectorstorage: Untangle from lotus deps
2020-03-27 22:35:33 +01:00
Łukasz Magiera
de1f2be505
Merge pull request #1458 from filecoin-project/feat/merge-sectorbuilder
...
Merge sectorbuilder into sectorstorage
2020-03-27 18:53:58 +01:00
Jeromy
97a7b449e6
use charge gas safe in places we return errors
2020-03-27 10:11:21 -07:00
Jeromy
672956af5d
addressing review
2020-03-26 20:13:32 -07:00
Jeromy
1b50be09af
dont use fatal errors in the vm
2020-03-26 20:03:04 -07:00
Travis Person
59e77ba6c8
Merge pull request #1457 from filecoin-project/feat/exitcodes
...
Update to new sepcs actors, more debug
2020-03-26 17:54:25 -07:00
Travis Person
090261f304
Revert gas exhausted exit code to SysErrOutOfGas
2020-03-27 00:19:34 +00:00
Jakub Sztandera
06cfbf5742
Switch exitcodes
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-03-26 22:11:06 +01:00
Łukasz Magiera
e050e0307e
Cleanup after dropping sectorbuilder
2020-03-26 20:35:16 +01:00
Aayush Rajasekaran
dc5159ce74
Update chain-validation, make necessary changes
2020-03-26 06:41:02 -04:00
Aayush Rajasekaran
1e1d0676ae
Set system actor's initial state correctly
2020-03-26 06:38:45 -04:00
Łukasz Magiera
4be54a976c
Merge sectorbuilder into sectorstorage
2020-03-26 03:51:06 +01:00
Łukasz Magiera
6399499e9b
Fix sealing sectors with multiple pieces
2020-03-26 02:18:13 +01:00
Jakub Sztandera
edf03c9ba8
Use adt.Empty
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-03-26 02:00:25 +01:00
Jakub Sztandera
7a6eb723ad
Use correct epoch for vrf
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-03-26 01:33:35 +01:00
Jakub Sztandera
300c89f541
Update to new sepcs actors, more debug
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-03-26 01:02:13 +01:00
Jeromy
088d693eea
code review changes
2020-03-25 12:13:09 -07:00
Aayush Rajasekaran
60ec264470
enable gas validation
2020-03-25 08:25:03 -04:00
Aayush Rajasekaran
7b9872c473
don't skip any tests
2020-03-25 08:25:03 -04:00
Aayush Rajasekaran
ebcefa80e3
provide msg length to vm::ApplyMessage
2020-03-25 08:25:03 -04:00
Aayush Rajasekaran
c951e0cc83
do not reprocess duplicate messages in a block
2020-03-25 08:25:03 -04:00
Aayush Rajasekaran
3a0df321d1
actually create new bls keys
2020-03-25 08:25:03 -04:00
Aayush Rajasekaran
3896631a1c
Remove pre-execution validity checks on messages
2020-03-25 08:25:03 -04:00
Aayush Rajasekaran
490f85e690
Send implicit messages for block rewards, cron ticks, state calls, and genesis setup
2020-03-25 08:25:03 -04:00
Aayush Rajasekaran
ad15750be3
Charge sender no gas, and penalise miner for certain invalid messages
2020-03-25 08:25:03 -04:00
Aayush Rajasekaran
654f933d3f
set up builtin actors correctly for validation testing
2020-03-25 08:25:03 -04:00
Aayush Rajasekaran
09a46e5d80
fix some gas charge bugs, and make our new account actor creation follow GFC
2020-03-25 08:25:03 -04:00
Łukasz Magiera
201d0a4b19
Merge remote-tracking branch 'origin/testnet/3' into feat/new-workers
2020-03-25 01:02:23 +01:00
Whyrusleeping
60ea9e6ec8
Merge pull request #1426 from filecoin-project/asr/statewait
...
Re: #1412 : Add a non-blocking version of StateWaitMsg
2020-03-24 16:17:47 -07:00
Jeromy
ec0d0a51db
chain validation nil return values should be []byte{}
2020-03-24 13:09:04 -07:00
Łukasz Magiera
66a682b55d
Merge remote-tracking branch 'origin/testnet/3' into feat/new-workers
2020-03-24 19:09:02 +01:00
Aayush Rajasekaran
d350a9d415
Re: #1412 : Add a non-blocking version of StateWaitMsg
...
- This commit adds a new method called StateSearchMsg
- We can probably overhaul StateWaitMsg onto this new method at a later point in time
2020-03-24 06:43:15 -04:00
Aayush Rajasekaran
d5b1bfe197
only skip one test
2020-03-24 04:44:50 -04:00
Aayush Rajasekaran
df13cfa52b
Only resolve origin to pubkey address when creating a new account actor
2020-03-24 04:43:09 -04:00
Aayush Rajasekaran
753e8ff7f5
Award gas fees to miners correctly
2020-03-24 03:35:58 -04:00
Aayush Rajasekaran
9ccc02d664
Load actor states afresh before making state changes
...
- Not doing this is causing bugs when reverting, since the actor cache gets reset
2020-03-24 03:33:22 -04:00
Jeromy
14591e718d
skip tests so we can get this merged in
2020-03-23 18:52:39 -07:00
Jeromy
9e67bef4bd
drop balance checks in block validation
2020-03-23 18:50:58 -07:00
Jeromy
2228f13f99
a couple vm fixes
2020-03-23 18:50:58 -07:00
Jeromy
6fe245a278
use proper exitcodes for caller validation
2020-03-23 18:50:28 -07:00
Aayush Rajasekaran
066b755b6a
set up initial account state of new Secp accounts
2020-03-23 18:50:28 -07:00
Aayush Rajasekaran
72c6552b0b
Allow invocation of account actor methods
2020-03-23 18:50:28 -07:00
Aayush Rajasekaran
05d43af3fc
Only try to resolve origin address during top-level invocation
2020-03-23 18:50:28 -07:00
Jeromy
8bc4195b7a
WIP: updating and getting chainval tests passing
2020-03-23 18:50:18 -07:00
Whyrusleeping
d74ede5a79
Merge pull request #1428 from filecoin-project/feat/graphsync-fetching
...
WIP: integrate graphsync for chainsync requests
2020-03-23 18:47:17 -07:00
Jeromy
719cec13d5
prefer blocksync, fallback to graphsync
2020-03-23 13:46:15 -07:00
Łukasz Magiera
eeec5a1bba
Merge pull request #1274 from filecoin-project/feat/doc/actors
...
doc: add comments related to actor code review
2020-03-23 12:49:41 +01:00
Łukasz Magiera
5e4a7e54df
Rename agvmgr+sealmgr to sectorstorage
2020-03-23 12:47:10 +01:00
Jeromy
f1dbd35407
change genesis fields to match interop
2020-03-21 15:25:00 -07:00
Jeromy
f3781e8329
update and rerun cbor gen
2020-03-21 14:17:01 -07:00
whyrusleeping
9d7f19b950
some cleanup
2020-03-20 21:30:24 -07:00
hannahhoward
2e9a052f62
fix(chainsync): support longer graphsync fetches with loop
2020-03-20 21:30:24 -07:00
hannahhoward
34f755b2b9
feat(chainsync): fixes to make graphsync work for chain fetching
...
- store to chain blockstore (ok for now, since storage provider is a seperate process)
- simplify request fetching and processing
2020-03-20 21:30:24 -07:00
whyrusleeping
1076a1a89d
WIP: integrate graphsync for chainsync requests
2020-03-20 21:30:24 -07:00
Jeromy
6fcfd0a4f0
add a test to roundtrip export/import a chain
2020-03-20 18:22:24 -07:00
Jeromy
921f11db34
Rewrite chain export walker function to actually do the right thing
2020-03-20 17:18:57 -07:00
Łukasz Magiera
e6aa01653a
Merge remote-tracking branch 'origin/testnet/3' into feat/new-workers
2020-03-20 23:42:46 +01:00
Whyrusleeping
aad449f28a
Merge pull request #1425 from filecoin-project/fix/randomness-for-ec
...
use proper lookback, and proper serialization for randomness generation
2020-03-20 15:03:22 -07:00
Whyrusleeping
a3fd1d4b51
Merge pull request #1401 from filecoin-project/fix/nonce-miss-no-gas
...
Missmatching nonce does not charge gas
2020-03-20 14:56:33 -07:00
Whyrusleeping
0ca935e0b9
Merge pull request #1417 from filecoin-project/fix/sshot-after-gas
...
take snapshot after gas transfer so its not reverted on method failure
2020-03-20 14:16:54 -07:00
Whyrusleeping
f9bd0fb2ce
Merge pull request #1433 from filecoin-project/feat/serialization-vectors
...
Integrate updated serialization vectors as tests
2020-03-20 14:11:28 -07:00
whyrusleeping
84fd969710
take snapshot after gas transfer so its not reverted on method failure
2020-03-20 13:50:46 -07:00
Jakub Sztandera
4ba4de3379
Missmatching nonce does not charge gas
...
It should charge miner but we don't have that mechanism yet.
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-03-20 20:44:45 +01:00
Aayush Rajasekaran
ef288b8a6c
Calculate new actor addresses as per updated spec
2020-03-20 15:43:08 -04:00
whyrusleeping
438aac190f
use proper lookback, and proper serialization for randomness generation
2020-03-20 12:20:56 -07:00
Whyrusleeping
7b69697439
Merge pull request #1434 from filecoin-project/feat/more-gas
...
Rework gas charging
2020-03-20 12:18:18 -07:00
Whyrusleeping
9df4fce282
Merge pull request #1438 from filecoin-project/frrist/display-chainval-testname
...
print chain-validation test name when running
2020-03-20 12:03:53 -07:00
Aayush Rajasekaran
5e46c0b4e9
Use blake2b, not SHA, for VRFs
2020-03-20 11:23:22 -07:00
frrist
100fc47812
print chain-validation test name when running
...
- makes debugging easier
2020-03-20 10:35:59 -07:00
Jakub Sztandera
ac09a6432c
Skip failing tests, update chain-validation
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-03-20 18:21:13 +01:00
Jakub Sztandera
ae40654907
Rework gas charging
2020-03-20 03:26:40 -04:00
whyrusleeping
905fc968bf
Integrate updated serialization vectors as tests
2020-03-18 22:53:15 -07:00
Łukasz Magiera
1ed7779701
Merge remote-tracking branch 'origin/testnet/3' into feat/new-workers
2020-03-19 03:28:55 +01:00
whyrusleeping
1fb70fc0e0
add simple test for helping to test state tree interop
2020-03-18 17:23:59 -07:00
Lucas Molas
d21cb96ddb
doc: add comments related to actor code review
2020-03-18 16:43:58 -07:00
whyrusleeping
ddf1beac6c
change gas limit to be a normal int64
2020-03-18 13:45:37 -07:00
Aayush Rajasekaran
6fda3c877e
Re: #1302 : Refine invalid message filtering
...
- This commit slightly weakens the current invalid message check
- The behaviour is that if you can't add a message to your pool, you *probably* won't broadcast it to your peers
- The exceptions are that you will broadcast a message if you fail to validate it because nonce / balance lookup fails
- This commit also lowers the invalid message log to debug (to lessen the annoyance of several invalid messages coming in, and hopefully to prevent confusion among node operators)
2020-03-18 03:14:18 -04:00
Aayush Rajasekaran
993505b461
Enable full validation tests
2020-03-18 02:57:11 -04:00
Aayush Rajasekaran
f22f427cde
Put the correct error into ExecutionResult
2020-03-18 02:57:11 -04:00
Aayush Rajasekaran
51cf5d5f1b
New Actor Addresses should be generated as per spec
...
- The pubkey address address of the sender should be used, not the ID address
- We should use the internal callSeqNum as input (was hard-coded to zero)
- The external message nonce should be used, not the actor's nonce in the post-increment state
2020-03-18 02:57:11 -04:00
Łukasz Magiera
e6ec20b4ca
Merge branch 'testnet/3' into feat/new-workers
2020-03-13 17:58:13 +01:00
Frrist
7371274ea7
update chain-validation: adds miner workflow test ( #1403 )
...
* update chain-validation. adds miner workflow test
* replace real sealing with mocked impl
2020-03-12 10:22:45 -07:00
whyrusleeping
3d6577838c
move power deduction out of the loop
2020-03-11 00:29:17 -07:00
Whyrusleeping
9bad73b995
Merge pull request #1388 from filecoin-project/fix/nonce-before-gas
...
Check for correct nonce before taking gas
2020-03-10 23:58:28 -07:00
Whyrusleeping
d48d073bcf
Merge pull request #1394 from filecoin-project/fix/fallbackpost-finally
...
get fallback post running successfully!
2020-03-10 23:41:41 -07:00
whyrusleeping
16d087cce4
get fallback post running successfully!
2020-03-10 23:30:48 -07:00
Łukasz Magiera
eb61a36fd7
workers: RPC scaffolding
2020-03-11 02:58:02 +01:00
Whyrusleeping
65506376a4
Merge pull request #1390 from filecoin-project/fix/genesis-double-power-accounting
...
Don't double account for miner power when setting up genesis blocks
2020-03-10 18:56:47 -07:00
Whyrusleeping
61e5b05262
Merge pull request #1386 from filecoin-project/fix/replay-not-found
...
dont panic when replay fails to find a message
2020-03-10 15:52:40 -07:00
whyrusleeping
14f9724bc9
Don't double account for miner power when setting up genesis blocks
2020-03-10 15:42:41 -07:00
Jakub Sztandera
f3c4288311
Check for correct nonce before taking gas
...
Otherwise as a miner you are able to include an invalid message forever
and get whole GasLimit of gas from it every time.
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-03-10 21:14:50 +01:00
Jakub Sztandera
cc7d25394c
Less noisy mapool add
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-03-10 21:06:58 +01:00
whyrusleeping
baca881473
dont panic when replay fails to find a message
2020-03-10 12:44:50 -07:00
whyrusleeping
1beab85d61
Drop debug messages
2020-03-09 23:46:13 -07:00