Skip to content
New issue

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

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

Already on GitHub? Sign in to your account

Support eth_call state override set #1990

Open
selimekim94 opened this issue Apr 4, 2023 · 6 comments · May be fixed by #2660
Open

Support eth_call state override set #1990

selimekim94 opened this issue Apr 4, 2023 · 6 comments · May be fixed by #2660

Comments

@selimekim94
Copy link

Why should this feature exist?
state override set makes eth_call even more powerful and allows for deep code analyses.

Advantages of state override set (from geth docs):

  • It can be used by DApps to reduce the amount of contract code needed to be deployed on chain. Code that simply returns internal state or does pre-defined validations can be kept off chain and fed to the node on-demand.
  • It can be used for smart contract analysis by extending the code deployed on chain with custom methods and invoking them. This avoids having to download and reconstruct the entire state in a sandbox to run custom code against.
  • It can be used to debug smart contracts in an already deployed large suite of contracts by selectively overriding some code or state and seeing how execution changes. Specialized tooling will probably be necessary.
@tclemos
Copy link
Contributor

tclemos commented Apr 5, 2023

It's a pending feature, as mentioned here:

- `eth_call` _* doesn't support state override at the moment and pending block_

geth ref: https://geth.ethereum.org/docs/interacting-with-geth/rpc/ns-eth#3-object---state-override-set

@georgeroman
Copy link

Is there any ETA on this?

@eduadiez eduadiez added this to the v0.4.0 milestone Oct 10, 2023
@tclemos tclemos modified the milestones: v0.4.0, v0.5.0 Oct 11, 2023
@tclemos
Copy link
Contributor

tclemos commented Oct 13, 2023

@selimekim94 @georgeroman
We are discussing internally about this feature and we are going to start working on this now.
We will use this issue to track this feature.
The current plan is to have it available in the v0.5.0.

@txgyy
Copy link

txgyy commented Mar 22, 2024

@selimekim94 @georgeroman We are discussing internally about this feature and we are going to start working on this now. We will use this issue to track this feature. The current plan is to have it available in the v0.5.0.

Hi, have you supported it now?

@balqaasem
Copy link

Hi @tclemos , @selimekim94 , @georgeroman Is this still in the roadmap, if yes when are you planning to support it pls?

@Jongsic
Copy link

Jongsic commented Jul 8, 2024

Hello!
The zkevm node implements most of the eth namespace functions, which is a remarkable achievement. However, I am very curious about when this state override feature, essential for running the Bundler component of the Ethereum EIP-4337(Account Abstraction), will be resolved. I know a big major update is being prepared, but it seems that a merge request for this issue (#2660) is also somewhat prepared. I would like to know if it could be provided through a minor update.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment