-
Notifications
You must be signed in to change notification settings - Fork 2.6k
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
Fix output and gas extraction in JS tracer for Geth #1869
Conversation
That was most probably a typo.
Now `gas` is the gas available in the first opcode of a call, while `gas_used` is the gas available _after_ the last opcode of the call.
Pull Request Test Coverage Report for Build 4b999ef0-e0f7-466d-a792-7715b86cc7cc
💛 - Coveralls |
The number of affected chains:
|
Actually, a query to initiate retrace of internal transactions should be corrected to this version:
because of "error" constraint violation
And also we need to increase timeout for geth indexers, because after implementing this update to half of the geth-based instances of Blockscout, fetcher of internal transactions cannot process 10 internal transactions because of 1-minute timeout. I will add an increase of timeout in a separate PR. |
Rather, it should set |
I was actually unsure, that the error status will be refetched if I clear it. Since it will be updated finally, thus, I will update
Thank you. |
JS tracer of internal transactions had two problems:
output
field wasn't derived correctly due to typo in field names used.gas
andgasUsed
didn't match the output from built-incallTracer
due to weird calculation method.Typo is fixed now, and
gas
/gasUsed
fields use a more robust method:gas
is taken from the first opcode trace in the scope of a call, whilegasUsed
is calculated using the remaining gas in the last opcode trace.Upgrading
Internal transactions previously fetched on Geth-based deployments contain wrong data and should be discarded:
Checklist for your PR
CHANGELOG.md
with this PR