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

Add call and prestate tracer to l2trace code #594

Closed
lightsing opened this issue Dec 13, 2023 · 0 comments
Closed

Add call and prestate tracer to l2trace code #594

lightsing opened this issue Dec 13, 2023 · 0 comments

Comments

@lightsing
Copy link
Member

lightsing commented Dec 13, 2023

Background

  1. Optimization of Trace Size: Aim to reduce the trace size by eliminating the stack trace of each execution step. Alternative methods are required to ascertain the result of each call, which introduce the need of callTracer.
  2. Issues with AccessSet Implementation: The implementation of AccessSet shows inaccuracies in specific edge cases, which introduce the need of prestateTracer
  3. Consistency Across L1 and L2 Code
  4. l2geth Version Limitation: The present l2geth version lacks the prestateTracer, which is available in the upstream version.

Requirements

  1. Integration of Geth Native Tracers: Implement the geth native tracers, specifically callTracer and prestateTracer (available here).
  2. Resolving Cycle-Import Issues: Address potential cycle-import problems when importing native tracers into the existing trace.go.

Secondary Objectives

  1. Porting Out-Bound Panic Fix: Implement the out-bound-read fix from GetMemoryCopyPadded.
  2. Porting muxTracer: Port the muxTracer to enable simultaneous operation of those three tracers.

Current Progress

Next Step

Hands on infra team to decide how to do this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants