Skip to content

Implement eth_simulatev1 #6203

@non-fungible-nelson

Description

@non-fungible-nelson

was eth_multicallV1

Description

Implementation of ethereum/execution-apis#484
More detail.

This introduces a new RPC method eth_multicallV1 allows users to make complex RPC calls to Ethereum nodes. Compared to eth_call, eth_multicallV1 has following extra features:

  • You can encapsulate multiple dependent calls in a single call
  • The calls happen inside blocks. You can simulate multiple blocks that can be arbitrary far from each other
  • Block variables can be overridden (e.g. time)
  • Account state can be overridden for every block (e.g. code and balance)
  • It is possible to override precompiles (e.g. ecrecover) with arbitrary EVM code
  • ETH transfers produce logs similar to ERC20 logs
  • Validation mode. You can choose to do very strict simulation or more relaxed one similar to eth_call

Presentation: https://docs.google.com/presentation/d/1lEaqHTY3ud8pe6VAFwLkb-jdoHpTMBfuF1K9OKy-azs/edit#slide=id.p

As a node runner, I want to be able to have access to all standard RPCs. This includes the speced RPC eth_multicallV1.

Acceptance Criteria

Metadata

Metadata

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions