-
Notifications
You must be signed in to change notification settings - Fork 20.4k
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
core, eth/tracer: initialize tracer statedb in CaptureStart #22333
Conversation
53039a5
to
827da14
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I tried using db
in a tracer for both simple transfer and normal contract txes and it worked. The changes LGTM.
827da14
to
a3309df
Compare
41afa02
to
4c1ac6a
Compare
Fixed up, rebased, PTAL |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
(only thing I would say is that ScopeContext is a bit redundant, as Scope and Context mean similar things, but I don't have a better idea)
In my mind, 'Scope' means the current call-scope, which is not per-transaction, but per So ScopeContext means "The contextual things related to a certain call-scope: like stack and memoy" |
…pturestart (ethereum#22333) Fixes the CaptureStart api to include the EVM, thus being able to set the statedb early on. This pr also exposes the struct we used internally in the interpreter to encapsulate the contract, mem, stack, rstack, so we pass it as a single struct to the tracer, and removes the error returns on the capture methods.
This is an alternative to #22276
CaptureStart
api to include theEVM
, thus being able to set the statedb early on.