Jakub Sztandera
bc88c632d1
Fix previous commit
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-02 18:47:33 +02:00
Jakub Sztandera
1e17ea3fff
Adjust gas values
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-02 18:47:33 +02:00
Jakub Sztandera
cd2595da67
Adjust gas
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-02 18:47:32 +02:00
Jakub Sztandera
4db61e71da
Reduce caller depth
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-02 18:47:32 +02:00
Jakub Sztandera
a2fd0aad41
More on OnActorExec
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-02 18:47:31 +02:00
Jakub Sztandera
01ac4e5da3
Gas on actor exec
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-02 18:47:30 +02:00
whyrusleeping
f8a1fb2321
fix vm abortf log message
2020-07-01 15:51:21 -07:00
Łukasz Magiera
4c422c2d50
specs-actors v0.7.1
2020-07-01 13:47:40 +02:00
Aayush Rajasekaran
1f57d9462c
Don't return nil interfaces from runtime.Send()
2020-06-29 01:13:45 -04:00
Łukasz Magiera
a6d1323eba
Update specs-actors to v0.7.0; More correct genesis sector import
2020-06-26 15:08:12 +02:00
Jakub Sztandera
10c4fae8c0
Make gas traces smaller, strip callers in import-bench
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-25 16:46:50 +02:00
Jakub Sztandera
b91e7a9860
Update to specs actors with ChargeGas interface
...
Based on `lotus-0.6.1-chargegas` in specs-actors.
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-17 20:00:30 +02:00
Jeromy
f8c4b64782
improve chain import analyze output, add some rough virtual gas charges
2020-06-15 16:05:29 -07:00
Łukasz Magiera
0230362d33
Merge pull request #2025 from filecoin-project/deps/specs-actors-v0.6
...
specs-actors v0.6
2020-06-15 21:30:37 +02:00
Jakub Sztandera
8039701f9e
Use extra field in gastrace
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-15 19:52:04 +02:00
Łukasz Magiera
907364ce67
Update deps, fix more tests
2020-06-15 18:30:49 +02:00
Jakub Sztandera
a23a87a17f
Add virtual gas
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-15 16:18:05 +02:00
Jakub Sztandera
91ea039077
Change ellipsis, more accurate timing
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-12 20:46:04 +02:00
Jakub Sztandera
cd69e57a33
Expose more callers, ellipsis unimportant ones
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-12 18:49:29 +02:00
Jakub Sztandera
071ddf6563
Add aggregate number, add number of bytes for storage calls
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-11 22:25:24 +02:00
Jakub Sztandera
c90d35869b
Add gas tracing
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-11 21:59:39 +02:00
Jakub Sztandera
6acc9a62f8
Split gas internally into compute gas and storage gas
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-11 20:37:14 +02:00
Łukasz Magiera
c8046f4597
Merge branch 'next' of github.com:filecoin-project/go-lotus into next
2020-06-11 18:24:51 +02:00
waynewyang
8354bd91db
fix:the condition of time-offset mining fault
2020-06-11 23:52:44 +08:00
Jakub Sztandera
c3f23ddce8
Refactor ExecutionResult to ExecutionTrace
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-11 15:53:47 +02:00
Jeromy
512270593b
clean up some of the more spammy logs
2020-06-11 12:31:29 +02:00
Jeromy
51f1712564
add a simple semaphore to batch verify seals
2020-06-05 10:47:49 -07:00
Jakub Sztandera
673a972fe9
Merge remote-tracking branch 'origin/master' into next
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-02 22:49:27 +02:00
Jeromy
9b867a221a
add subcall timing to compute state output
2020-06-02 12:53:24 -07:00
Jakub Sztandera
5605aae269
Fix even more lint warnings
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-02 16:29:39 +02:00
Aayush Rajasekaran
7dd25c3ac5
Correctly handle transfers with sender = receiver
2020-05-29 12:15:41 -04:00
Łukasz Magiera
785eeb1eee
Merge pull request #1850 from filecoin-project/chore/lint
...
Cleanup many lint warnings
2020-05-29 18:06:06 +02:00
Jeromy
e2a554c2e6
update specs actors to version with batch porep verification
2020-05-28 13:19:18 -07:00
Jakub Sztandera
d6615b6286
Cleanup many lint warnings
...
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-05-27 22:53:20 +02:00
Jeromy
646800b8a8
update to latest ffi
2020-05-22 09:26:14 -07:00
frrist
9165f14693
feedback: fatal errors in vm.transfer
2020-05-18 12:00:52 -07:00
frrist
9305eca97c
don't ignore transfer error in delete actor
2020-05-18 12:00:52 -07:00
frrist
0c2e4e2d4f
return correct exitcodes from vm transfer
2020-05-18 12:00:52 -07:00
Aayush Rajasekaran
aec168e05f
Update specs-actors, re-enable full chain validation
2020-05-12 19:52:33 -04:00
Aayush Rajasekaran
46fb5f8602
update CV, skip nested sends test
2020-05-12 14:14:00 -04:00
Łukasz Magiera
4ea021d151
Merge pull request #1701 from filecoin-project/asr/syncvalidity
...
Message validation changes
2020-05-12 13:48:33 +02:00
Aayush Rajasekaran
6bf2dcd97c
Message validation changes
2020-05-11 21:54:44 -04:00
Łukasz Magiera
ec83b9cf7c
Fix tests post specs-actors update
2020-05-11 23:26:33 +02:00
Aayush Rajasekaran
dd79c66d41
Update and re-enable chain-validation
2020-05-06 21:44:09 -04:00
Whyrusleeping
97130684a2
Merge pull request #1680 from filecoin-project/deps/faster-publish-deals
...
update to specs-actors code with faster publish deals
2020-05-06 14:45:17 -07:00
Aayush Rajasekaran
187e386740
Bugfix: Correctly transfer gas when failing to charge for retValue
2020-05-06 16:53:32 -04:00
Jeromy
fa59cdc2ad
update to specs-actors code with faster publish deals
2020-05-05 17:06:32 -07:00
Aayush Rajasekaran
8a9862bdb4
The VerifySig syscall should verify sigs
2020-05-05 15:26:34 -04:00
Jeromy
a553d438c0
dont override exit codes for actor creation failure
2020-05-04 16:31:26 -07:00
Łukasz Magiera
ed500dbbdf
Merge remote-tracking branch 'origin/testnet/3' into asr/createactor
2020-04-30 21:29:04 +02:00
Aayush Rajasekaran
a047e158ed
Add some validity checks to runtime.CreateActor()
2020-04-30 14:21:29 -04:00
Aayush Rajasekaran
bd1ac4d91b
Only charge for actor creation after making a meaningful state change
2020-04-30 14:18:26 -04:00
Aayush Rajasekaran
d9a1d912fd
Elevate an actor construction fail-case to fatal
2020-04-30 13:46:33 -04:00
frrist
c66415ae4c
fix: insufficient gas remaining to cover retval
...
proceed as in the case of method execution failure.
2020-04-29 16:38:34 -07:00
Łukasz Magiera
89b19af43f
specs-actors v0.3
2020-04-29 20:06:05 +02:00
Whyrusleeping
cd5cbcfe4f
Merge pull request #1627 from filecoin-project/fix/safe-actor-serialization
...
vm: Don't treat actor state serialization errors as fatal
2020-04-28 10:50:53 -07:00
Łukasz Magiera
9dcb42328e
gofmt
2020-04-28 19:27:13 +02:00
Łukasz Magiera
c760a88c22
vm: don't treat actor state serialization errors as fatal
2020-04-28 15:21:31 +02:00
Aayush Rajasekaran
5900d765fd
caller must be validated exactly once
2020-04-28 00:07:47 -04:00
Whyrusleeping
e65d293ba4
Merge pull request #1607 from filecoin-project/feat/chainwatch-updates
...
chainwatch: Record drand entries
2020-04-27 16:23:47 -07:00
Aayush Rajasekaran
e46c4652a5
Forbid internal message in State Transaction()
2020-04-25 02:01:26 -04:00
Aayush Rajasekaran
832657edfb
Eliminate use of SysErrInternal, some interop changes
2020-04-25 01:55:59 -04:00
Łukasz Magiera
e38484a109
Merge remote-tracking branch 'origin/testnet/3' into feat/chainwatch-updates
2020-04-25 00:27:59 +02:00
Łukasz Magiera
0522af155d
chainwatch: Record drand entries
2020-04-25 00:25:33 +02:00
Frrist
0f0589bcf5
Update validation driver to match latest in chain-validation ( #1532 )
...
* update driver to match new chain-validation interfaces
* update chain-validation
* update filecoin-ffi
* gofmt
* update chain-validation again
2020-04-24 15:08:16 -07:00
Jeromy
7ee42e61d5
add command to analyze import bench output
2020-04-23 16:48:54 -07:00
Jeromy
24b7661837
fix up some tests
2020-04-17 13:44:13 -07:00
Łukasz Magiera
93b2b6d65d
Merge branch 'testnet/3' into feat/windowed-post
2020-04-17 18:38:20 +02:00
Jeromy
4153f128ef
a more betterer supply impl
2020-04-16 16:03:38 -07:00
Łukasz Magiera
706c0b8d3a
Stub syscalls.TotalFilCircSupply
2020-04-17 00:19:54 +02:00
Whyrusleeping
0db5fc422a
Merge pull request #1534 from filecoin-project/patch/syscalls
...
VerifyConsensusFault syscall impl
2020-04-16 13:33:58 -07:00
Henri S
8594af970f
fix typo:
2020-04-16 15:52:49 -04:00
Aayush Rajasekaran
6a8e4bf87e
Lower a log level
2020-04-16 15:34:01 -04:00
Aayush Rajasekaran
14ad808a00
Remove unused fields from VM
2020-04-16 15:34:01 -04:00
Łukasz Magiera
8338be3a6e
Fix genesis creation
2020-04-16 19:17:56 +02:00
Łukasz Magiera
98f3cab24e
Update specs-actors
2020-04-16 18:41:45 +02:00
Henri S
a4cdfe89fd
fix parent grinding check
2020-04-13 15:55:53 -04:00
Henri S
23dc776bd1
finalize logic, still need to import appropriate fields to the shim
2020-04-13 15:55:53 -04:00
Henri S
aa5cec39ca
first stab
2020-04-13 15:55:53 -04:00
Łukasz Magiera
a2554952d1
Some electionPoSt -> winningPoSt renaming
2020-04-11 00:22:45 +02:00
Łukasz Magiera
072dd8b744
Merge remote-tracking branch 'origin/testnet/3' into feat/windowed-post
2020-04-10 20:38:25 +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
Aayush Rajasekaran
17e9feb633
Sever the API's dependency on VM
2020-04-08 18:27:31 -04:00
Jeromy
8e0ca306d2
more wiring up of drandomness
2020-04-08 08:11:42 -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
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
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
Łukasz Magiera
95ee1c1cde
Extract sector-storage
2020-03-28 01:32:39 +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
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
Łukasz Magiera
4be54a976c
Merge sectorbuilder into sectorstorage
2020-03-26 03:51:06 +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
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
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
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
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
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
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
Ł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
e6aa01653a
Merge remote-tracking branch 'origin/testnet/3' into feat/new-workers
2020-03-20 23:42:46 +01: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
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
7b69697439
Merge pull request #1434 from filecoin-project/feat/more-gas
...
Rework gas charging
2020-03-20 12:18:18 -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
Łukasz Magiera
1ed7779701
Merge remote-tracking branch 'origin/testnet/3' into feat/new-workers
2020-03-19 03:28:55 +01: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
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
Łukasz Magiera
eb61a36fd7
workers: RPC scaffolding
2020-03-11 02:58:02 +01: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
whyrusleeping
1beab85d61
Drop debug messages
2020-03-09 23:46:13 -07:00
whyrusleeping
85e17fa5b0
fix state cid accounting after 'Transaction' calls
2020-03-09 22:20:46 -07:00
whyrusleeping
114cb2d2aa
squash the spec shim and the vmcontext into the new runtime type
2020-03-09 21:44:29 -07:00
whyrusleeping
bf6948f8d6
update to latest specs-actors
2020-03-08 21:21:46 -07:00
whyrusleeping
24bf720a9a
Merge branch 'master' into testnet/3
2020-03-07 16:46:12 -08:00
whyrusleeping
34ad13fc22
fix initial reward actor balance
2020-03-06 17:33:24 -08:00
Aayush Rajasekaran
340afc3503
Add information about internal message executions to SimulationResult
...
- The VM now tracks a list of ExecutionResults to keep track of internal messages
2020-03-06 11:11:06 -08:00
Łukasz Magiera
e51fa5c9ac
libs: Use zerocomm from sectorbuilder
2020-03-06 19:50:41 +01:00