Steven Allen
8b35f480c4
initial vm conversion
...
We're probably going to want to change some of these design decisions down the
road, but this is a good starting point.
* We may want to use a more general test for "is actor valid at epoch". Maybe
just a function?
* I'd like to push some of the actor metadata down into the actor types
themselves. Ideally, we'd be able to register actors with a simple
`Register(validation, manyActors...)` call.
2020-09-25 12:49:39 -07:00
Steven Allen
d9656f5220
add a generic load method for actor state
...
This will make it easier to load arbitrary actors. We can:
* Type switch (sort of unsafe, may want marker methods?)
* Use this with `vm.MutateActorState`.
2020-09-25 12:49:39 -07:00
Steven Allen
87351fa35c
move version to actors, from builtin
...
Otherwise, we're going to end up with an import cycle between the adt and this
version.
2020-09-25 12:49:39 -07:00
Steven Allen
edb31e606a
correctly load new actors
2020-09-25 12:49:39 -07:00
Steven Allen
8806f27220
fix runtime reflection for upgrade
2020-09-25 12:49:39 -07:00
Steven Allen
858f11992f
compile fix
2020-09-25 12:49:39 -07:00
Steven Allen
35562bd2f9
fixup v1 actors for new methods
...
Also, correctly handle multiple ADT versions.
2020-09-25 12:49:39 -07:00
Aayush Rajasekaran
ebad0ded3d
Introduce v1 actors
2020-09-25 12:49:39 -07:00
Raúl Kripalani
68663060dc
add state.StateTree#Version() accessor.
2020-09-24 17:58:49 +01:00
Łukasz Magiera
85caa48814
Merge pull request #3991 from filecoin-project/feat/nicer-syncwait
...
Make sync wait nicer
2020-09-24 17:03:21 +02:00
Łukasz Magiera
17a84c9a2c
Merge pull request #3975 from filecoin-project/steb/abstract-actor-policy
...
Add some actors policy setters for testing
2020-09-24 15:51:41 +02:00
Łukasz Magiera
2867b31d2b
Merge pull request #3208 from austinabell/extratsload
...
Update beacon entry load error message
2020-09-24 14:19:00 +02:00
Łukasz Magiera
1a70dd4fb4
Merge pull request #3977 from filecoin-project/steb/remove-cbor-abstraction
...
Remove a misleading miner actor abstraction
2020-09-24 14:02:59 +02:00
Łukasz Magiera
15eddf0c96
Make sync wait nicer
2020-09-24 13:39:49 +02:00
Łukasz Magiera
ded3a30f55
fix lint
2020-09-24 11:56:54 +02:00
whyrusleeping
38e256cece
add some tracing to the vm's blockstore copy
2020-09-23 20:19:20 -07:00
whyrusleeping
b4e03d1759
batch blockstore copies after block validation
2020-09-23 18:53:28 -07:00
Steven Allen
32a699d6a3
Add some actors policy setters for testing
...
Addresses:
* a307e4593a (r491966115)
* a307e4593a (r491966634)
Note: This puts everything into a policy package to avoid a dependency cycle
between the build package, the miner package, and the types package. This is
also why I introduced a GetPreCommitChallengeDelay function and removed the
variable.
2020-09-23 15:00:52 -07:00
Steven Allen
46f5b62a76
Remove a misleading miner actor abstraction
...
We shouldn't implement CBOR functions on the "abstract" miner info. Otherwise,
we could end up trying to actually _use_ this "abstract" info when decoding
state (which won't work across version).
Also remove the use of these CBOR functions, and instead explicitly use miner0
types. We'll have to abstract over versions eventually, but we'll probably need
some form of abstract miner builder (or maybe even adding some "add sector",
etc. functions to the current miner abstraction?
2020-09-23 14:49:53 -07:00
Aayush Rajasekaran
e09d291e5d
Merge pull request #3939 from filecoin-project/fix/chain-sync-validation
...
Validate chain sync response indices when fetching messages
2020-09-23 17:35:14 -04:00
Steven Allen
1c1d23d142
fix out-of-bounds when loading all sector infos
...
fixes #3972
2020-09-23 12:40:44 -07:00
Łukasz Magiera
a2278e26af
Merge pull request #3887 from filecoin-project/feat/parallel-sync
...
Parallel fetch for chain sync
2020-09-23 19:24:54 +02:00
Raúl Kripalani
f1ab1af617
add init.State#Remove() for testing.
2020-09-23 17:42:01 +01:00
Aayush Rajasekaran
a876a0ba44
Use actor state addresses
2020-09-23 02:32:40 -04:00
Aayush Rajasekaran
819180f739
Implement inefficient OnAddressMapChange predicate
2020-09-23 02:15:01 -04:00
Aayush Rajasekaran
476e7992e8
Add an error return to all actor state interface methods
2020-09-23 01:51:38 -04:00
Aayush Rajasekaran
e27fc03f55
Reward state interface only needs cbor.Marshaler
2020-09-23 01:42:10 -04:00
Aayush Rajasekaran
ed4bf9b8fe
API shouldn't depend on actors directly
2020-09-23 00:51:12 -04:00
Lucas Molas
dcf2735836
move validation from protocol to API
2020-09-22 20:19:31 -03:00
Steven Allen
46fb0e74cd
add deal state iterator
2020-09-22 14:09:33 -07:00
Steven Allen
2967c4ec10
use abstract actor type methods
2020-09-22 12:02:29 -07:00
Steven Allen
441d7ff790
cleanup imports some more
2020-09-22 11:14:55 -07:00
Steven Allen
bc24fdbd14
finish migrating statemanager
2020-09-22 11:09:56 -07:00
Steven Allen
ab070f2ebe
copy actor object when iterating over actors
...
This is a pretty big footgun.
2020-09-22 11:09:41 -07:00
Steven Allen
5314ba8c6d
remove ptr indirection
2020-09-22 10:55:29 -07:00
Aayush Rajasekaran
1dc69e397e
Resolve some unnecessary actor upgrade TODOs
2020-09-22 01:34:21 -04:00
Aayush Rajasekaran
d56da1b014
Refinements to stmgr and utils
2020-09-22 01:34:20 -04:00
Steven Allen
d33dd4f7bc
more renames
2020-09-21 16:01:29 -07:00
Steven Allen
3f0106cfe5
migrate lotus-shed/genesis-verify to actor abstraction
2020-09-21 15:18:30 -07:00
Steven Allen
4bab784e40
migrate lotus-shed verifreg to specs-actors abstractions
2020-09-21 15:04:39 -07:00
Steven Allen
916421b247
convert lotus-shed balances
2020-09-21 13:43:47 -07:00
Steven Allen
a41bf74bad
fix: remove incorrect variable
2020-09-21 13:25:03 -07:00
Steven Allen
0ab2459fce
convert multisig to new actor abstractions
2020-09-21 13:13:38 -07:00
Steven Allen
24ae9205fe
cross-version state tree diff
2020-09-21 12:50:12 -07:00
Steven Allen
4cf0c105eb
optimize sector loading
...
And avoid exposing "arrays" via the miner abstraction. We may change these
structures later.
2020-09-21 12:12:08 -07:00
Steven Allen
025663118f
non-destructive diff
2020-09-21 10:30:33 -07:00
Łukasz Magiera
0b5e4a9612
Make GetSectorsForWinningPoSt fast again
2020-09-21 18:28:32 +02:00
vyzo
5663b2d697
change GetChainMessages api to include tipsets for validation
2020-09-21 18:58:52 +03:00
vyzo
44b52941f7
add option to validate messages against expected tipset
2020-09-21 18:50:41 +03:00
vyzo
58a85f378c
refactor response compressed index validation into its own function
2020-09-21 18:33:31 +03:00