Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

StateReadState fails with Embryo Actors #1022

Closed
9 of 18 tasks
Schwartz10 opened this issue Oct 24, 2022 · 4 comments
Closed
9 of 18 tasks

StateReadState fails with Embryo Actors #1022

Schwartz10 opened this issue Oct 24, 2022 · 4 comments
Assignees
Labels
Lotus P2 P2: Should be resolved

Comments

@Schwartz10
Copy link

Schwartz10 commented Oct 24, 2022

Checklist

  • This is not a security-related bug/issue. If it is, please follow please follow the security policy.
  • This is not a question or a support request. If you have any lotus related questions, please ask in the lotus forum.
  • This is not a new feature request. If it is, please file a feature request instead.
  • This is not an enhancement request. If it is, please file a improvement suggestion instead.
  • I have searched on the issue tracker and the lotus forum, and there is no existing related issue or discussion.
  • I am running the Latest release, or the most recent RC(release canadiate) for the upcoming release or the dev branch(master), or have an issue updating to any of these.
  • I did not make any code changes to lotus.

Lotus component

  • lotus daemon - chain sync
  • lotus miner - mining and block production
  • lotus miner/worker - sealing
  • lotus miner - proving(WindowPoSt)
  • lotus miner/market - storage deal
  • lotus miner/market - retrieval deal
  • lotus miner/market - data transfer
  • lotus client
  • lotus JSON-RPC API
  • lotus message management (mpool)
  • Other

Lotus Version

FVM Obsidian / Rhodium / Quartz release from [here](https://github.com/filecoin-project/testnet-wallaby/issues/12)

Describe the Bug

Calling StateReadState for an embryo actor returns an error:

        "message": "dumping actor state (a:t01008): state type for actor bafk2bzacecau3tohdilfx66pohfqdrngpuqd5oew2j5iv3c7sjlrkcm5npqos not found"

I have validated that the embryo actor version matches what the network should be suspecting by calling StateActorCodeCIDs with 18 as the version number. bafk2bzacecau3tohdilfx66pohfqdrngpuqd5oew2j5iv3c7sjlrkcm5npqos is returned as the CID for embryo actors

Logging Information

curl --location --request POST 'https://wallaby.node.glif.io/rpc/v0' \
--header 'Content-Type: application/json' \
--data-raw '{
"jsonrpc": "2.0",
"method": "Filecoin.StateReadState",
"id": 1,
"params": ["t01008", null]
}'
{
    "jsonrpc": "2.0",
    "id": 1,
    "error": {
        "code": 1,
        "message": "dumping actor state (a:t01008): state type for actor bafk2bzacecau3tohdilfx66pohfqdrngpuqd5oew2j5iv3c7sjlrkcm5npqos not found"
    }
}

Repo Steps

This curl command will trigger it, but if the network resets again, actor t01008 might not exist, or might get reassigned to a non-embryo actor type

curl --location --request POST 'https://wallaby.node.glif.io/rpc/v0' \
--header 'Content-Type: application/json' \
--data-raw '{
"jsonrpc": "2.0",
"method": "Filecoin.StateReadState",
"id": 1,
"params": ["t01008", null]
}'
@jennijuju jennijuju transferred this issue from filecoin-project/lotus Oct 25, 2022
Stebalien added a commit to filecoin-project/lotus that referenced this issue Oct 25, 2022
We need to add full FEVM state support, but that will require merging
master. This is enough for now.

fixes filecoin-project/ref-fvm#1022
@Stebalien
Copy link
Member

We can't properly fix this until we rebase our lotus branch on master. But filecoin-project/lotus#9550 will address the immediate issue.

Stebalien added a commit to filecoin-project/lotus that referenced this issue Oct 26, 2022
We need to add full FEVM state support, but that will require merging
master. This is enough for now.

fixes filecoin-project/ref-fvm#1022
@maciejwitowski maciejwitowski added this to the M2.1 milestone Nov 8, 2022
@Stebalien Stebalien added the P2 P2: Should be resolved label Nov 8, 2022
@Stebalien Stebalien modified the milestones: M2.1, M2.1 Post code-freeze Nov 8, 2022
vyzo pushed a commit to filecoin-project/lotus that referenced this issue Nov 9, 2022
We need to add full FEVM state support, but that will require merging
master. This is enough for now.

fixes filecoin-project/ref-fvm#1022
@Schwartz10
Copy link
Author

@jennijuju this bug still occurs with deployed evm actors:

curl --location --request POST 'https://wallaby.node.glif.io/rpc/v0' \
--header 'Content-Type: application/json' \
--data-raw '{
"jsonrpc": "2.0",
"method": "Filecoin.StateReadState",
"id": 1,
"params": ["t410fcpxroup2sdsrmegjx7abklbxl5hr3fqny7s22kq", null]
}'

@jennijuju
Copy link
Member

aayush has a PR merged and ready to get tested on wallaby filecoin-project/lotus#9958

@github-project-automation github-project-automation bot moved this from 🌟 In Scope to ✅ Done in Network v18 Jan 9, 2023
@arajasek
Copy link
Contributor

arajasek commented Jan 9, 2023

Note that there's a separate issue that will cause this to not work for EVM actors: filecoin-project/go-state-types#145

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
Lotus P2 P2: Should be resolved
Projects
No open projects
Status: Done
Development

No branches or pull requests

6 participants