Commit Graph

97 Commits

Author SHA1 Message Date
Steven Allen
e78d1306ee
feat: fvm: add support for looking up past tipset CIDs (#9687)
* feat: add support for generating tipset CIDs

(cherry-picked from feat/nv18-fevm)

* feat: fvm: add support for looking up past tipset CIDs

We do this by adding yet another "getter" to the VM that resolves an
epoch into a TipSetKey.

Co-authored-by: Kevin Li <ychiaoli18@users.noreply.github.com>
2022-11-22 12:41:03 -05:00
Aayush
7609655986 address review 2022-10-20 13:49:29 -04:00
Aayush
3401ef6f02 Add a second premigration for nv17 2022-10-19 16:50:13 -04:00
Aayush
66bb149a65 Migration: Use autobatch bs 2022-10-19 11:56:11 -04:00
Aayush Rajasekaran
3c1b723c7f
Merge pull request #9486 from filecoin-project/gstuart/remove-banner
fix: upgrade: no splash banner for nv17 :(
2022-10-13 15:20:39 -04:00
Geoff Stuart
f891714db2 Remove fvm splash banner from nv17 upgrade 2022-10-13 15:19:17 -04:00
Jennifer Wang
48bf70f3ee shark params 2022-10-13 12:18:28 -04:00
Geoff Stuart
37be57610c
feat: actors: Integrate datacap actor into lotus (#9348)
* Integrate datacap actor

* Implement datacap actor in chain/builtin
2022-09-21 15:51:28 -04:00
Geoff Stuart
94add978b0
chore: actors: Allow builtin-actors to return a map of methods (#9342)
* Allow builtin-actors to return a map of methods

* go mod

* Fix tests

* Fix tests, check carefully please
2022-09-21 10:56:58 -04:00
Aayush
0efca4d266 introduce v9 actors and nv17 2022-09-09 21:40:15 -04:00
Aayush
474a50252b FVM: always enable tracing for user-triggered executions 2022-07-14 15:41:26 -04:00
Aayush
906463bc17 more review 2022-06-29 14:23:35 -04:00
Aayush
f9cf25f966 address review 2022-06-29 11:57:46 -04:00
Aayush
a52d584d0c an attempt at cleanup 2022-06-28 19:24:47 -04:00
Jennifer Wang
c3f3eb0812 Merge branch 'releases' into jen/masterbp 2022-06-27 15:13:12 -04:00
Steven Allen
cd6c0c2ad3 feat: move banner, embed, and run at v8 upgrade only
1. Embed the banner in the upgrades subsystem instead of reading it at
runtime.
2. Print it all at once instead of line-by-line.
3. Run it in the v8 upgrade itself.
2022-06-22 12:41:14 -07:00
Łukasz Magiera
db676acdf8 storage: Cleanup interfaces a bit 2022-06-17 13:52:19 +02:00
Łukasz Magiera
05cdeb80c3 chore: remove redundant import prefixes 2022-06-15 12:06:22 +02:00
Łukasz Magiera
a9600b8a6f storage: Move extern/sector-storage to storage/sealer 2022-06-14 20:03:38 +02:00
Łukasz Magiera
e65fae28de chore: fix imports 2022-06-14 17:00:51 +02:00
Steven Allen
ddc9425c07 feat: refactor: actor bundling system (#8838)
1. Include the builtin-actors in the lotus source tree.
2. Embed the bundle on build instead of downloading at runtime.
3. Avoid reading the bundle whenever possible by including bundle
   metadata (the bundle CID, the actor CIDs, etc.).
4. Remove everything related to dependency injection.
    1. We're no longer downloading the bundle, so doing anything ahead
       of time doesn't really help.
    2. We register the manifests on init because, unfortunately, they're
       global.
    3. We explicitly load the current actors bundle in the genesis
       state-tree method.
    4. For testing, we just change the in-use bundle with a bit of a
       hack. It's not great, but using dependency injection doesn't make
       any sense either because, again, the manifest information is
       global.
    5. Remove the bundle.toml file. Bundles may be overridden by
       specifying an override path in the parameters file, or an
       environment variable.

fixes #8701
2022-06-13 10:51:49 -07:00
Steven Allen
30981d0fdd
feat: refactor: actor bundling system (#8838)
1. Include the builtin-actors in the lotus source tree.
2. Embed the bundle on build instead of downloading at runtime.
3. Avoid reading the bundle whenever possible by including bundle
   metadata (the bundle CID, the actor CIDs, etc.).
4. Remove everything related to dependency injection.
    1. We're no longer downloading the bundle, so doing anything ahead
       of time doesn't really help.
    2. We register the manifests on init because, unfortunately, they're
       global.
    3. We explicitly load the current actors bundle in the genesis
       state-tree method.
    4. For testing, we just change the in-use bundle with a bit of a
       hack. It's not great, but using dependency injection doesn't make
       any sense either because, again, the manifest information is
       global.
    5. Remove the bundle.toml file. Bundles may be overridden by
       specifying an override path in the parameters file, or an
       environment variable.

fixes #8701
2022-06-13 10:15:00 -07:00
Aayush
dda9ac31c6 invoker: gen the registry 2022-06-10 17:40:07 -04:00
Geoff Stuart
b7010c9e60 Implement function to migrate actors with only code changes 2022-06-10 15:52:32 -04:00
Geoff Stuart
3f712c376a Example V9 migration function 2022-06-10 15:07:42 -04:00
Geoff Stuart
801c670edd Remove ChainPutMany 2022-06-10 14:09:05 -04:00
Geoff Stuart
64d62f1f7e Review fixes v2 2022-06-10 12:32:31 -04:00
Geoff Stuart
3c4792d3e9 review fixes 2022-06-10 11:35:01 -04:00
Aayush
e79c2eaa4a gofmt 2022-06-09 18:32:20 -04:00
Aayush
b211c51643 invoker: gen the registry 2022-06-09 16:09:23 -04:00
Geoff Stuart
339692cde5 create function for migrating builtin actors with only code changes 2022-06-09 15:13:42 -04:00
Aayush
c95ad7229f Revert "VM: Refactor pricelist to be based on network versions"
This reverts commit 25b2e144b8.
2022-05-30 15:25:33 -04:00
Aayush
4fa04abb8c Add disable flag for Skyr upgrade 2022-05-26 18:20:49 -04:00
Geoff Stuart
30e7f89662 Check for manifest CID while loading bundle 2022-05-26 17:30:32 -04:00
Aayush Rajasekaran
6924a3d5f2 Fix calculation of Drand round from Filecoin epochs 2022-05-25 12:43:52 -04:00
Aayush Rajasekaran
e87bb5db6a
Merge pull request #8680 from filecoin-project/feat/nv16-migration-bundle
[nv16] Ensure v8 bundle is loaded during migration
2022-05-24 14:33:22 -04:00
Steven Allen
f7c610ee23 feat: vm: drop nv14 support from the FVM
The next FVM version will only support nv15+.

This change also disables the FVM before nv15, even if enabled through
the environment variable. This allows "catching up" from before nv15.
2022-05-23 09:50:54 -07:00
vyzo
811bb58c5a always load the bundle into the blockstore during the migration 2022-05-18 20:20:17 +03:00
Aayush
b2b20e469f Fix tests 2022-05-17 15:21:27 -04:00
Aayush
8cca9b1970 Use new go-state-types accessors 2022-05-17 15:21:27 -04:00
Aayush Rajasekaran
fbcd4c7a6f
fix: upgrades: correct error message for v16 migration 2022-05-10 11:36:12 -04:00
vyzo
3b1964c507 remove manifest from upgrade schedule, get it inside the migration instead 2022-04-14 19:33:24 +03:00
vyzo
752ce9e590 make tests work 2022-04-14 19:31:14 +03:00
vyzo
71913521f9 fix itest migrations 2022-04-14 19:30:47 +03:00
vyzo
a8547ed840 make manifest cid access thread-safe 2022-04-14 19:30:47 +03:00
vyzo
f26d19ed7d load actor bundle at startup and initialize the manifest CID from the loaded file 2022-04-14 19:29:22 +03:00
vyzo
a9ae38a1ce wire in nv16 migration signature and manifests 2022-04-14 19:29:22 +03:00
Aayush
3370847f3e Implement FIP-0031 2022-04-14 19:28:16 +03:00
Aayush
25b2e144b8 VM: Refactor pricelist to be based on network versions 2022-03-25 15:06:10 -04:00
Aayush
9ea623e125 Rename the Lotus VM to LegacyVM 2022-03-15 19:40:17 -04:00