Skip to content

Improve documentation of Contract::call_with_preftech #387

@nategraf

Description

@nategraf

As the number of SLOAD and SSTORE operations in a call grows, the preflight time with Steel can become quite long due to the large number of RPC calls to be individual storage proofs. We also support a Contract::call_with_preftech method that uses eth_createAccessList to greatly reduce the number of RPC calls and improve pre-flight time.

Unfortunately, using eth_createAccessList has some trade-offs the main two are:

  • On certain node software (e.g. Geth, but not Reth), the underlying eth_createAccessList RPC actually checks to see if there are enough funds for the gas cost (in most cases, this can be fixed with a simple .from("0x00000000219ab540356cBB839Cbe05303d7705Fa"), but this is rather arbitrary and ugly).
  • This eth_createAccessList RPC is not available on all node software versions or chains.

Given this, we cannot make it the default, but we should still improve documentation to ensure devs know about this method and when they can apply it.

Metadata

Metadata

Assignees

No one assigned

    Labels

    documentationImprovements or additions to documentationsteel

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions