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

Rinkeby network. Error: cannot read property 'calls' of undefined in server-side tracer function 'fault' #23660

Closed
enertom opened this issue Sep 29, 2021 · 12 comments · Fixed by #23667

Comments

@enertom
Copy link

enertom commented Sep 29, 2021

System information

Geth version: "Geth/v1.10.9-stable-eae3b194/linux-amd64/go1.17.1
OS & Version: Linux

Params: --rinkeby --syncmode full --gcmode=archive --snapshot=true

Actual behaviour

When i try to call the method debug_traceTransaction on Rinkeby network:

сurl -X POST -H "Content-Type: application/json" --data '{"method": "debug_traceTransaction","params": ["0xdf8f0fc660ccc30c7d41f2fffa4b582c629d59597fb981019f0415a82ea9d7cd",{ "tracer": "callTracer","timeout": "100s" }],"jsonrpc": "2.0","id": 1}' http://ip:port

i get the error -

{"jsonrpc":"2.0","id":1,"error":{"code":-32000,"message":"TypeError: cannot read property 'calls' of undefined    in server-side tracer function 'fault'"}}

Expected behaviour

Correct traced response from node

@nikashitsa
Copy link

nikashitsa commented Sep 30, 2021

I have same issue on Mainnet with partially executed transactions like this https://etherscan.io/tx/0xc3e19ca9c77ebe65b6ba927932ee6dcce69ae4eb324d8ecfac020f977a8eb5d3
Error only in v1.10.9.
In v1.10.8 - no error.

@MariusVanDerWijden
Copy link
Member

A quick workaround is to use callTracerLegacy instead of callTracer which will use the pre v.10.9. behavior

@fjl fjl added this to the 1.10.10 milestone Sep 30, 2021
@enertom
Copy link
Author

enertom commented Sep 30, 2021

A quick workaround is to use callTracerLegacy instead of callTracer which will use the pre v.10.9. behavior

@MariusVanDerWijden if i use callTracerLegacy tracer instead of callTracer the node crashes

@MariusVanDerWijden
Copy link
Member

That's weird. With what error message does it crash?
cc @s1na

@enertom
Copy link
Author

enertom commented Sep 30, 2021

node shutdown without any error

@s1na
Copy link
Contributor

s1na commented Sep 30, 2021

We found the original issue and will submit a fix today. But I haven't been able to reproduce the node crash using callTracerLegacy yet. Can you point me to a mainnet tx where that happens? (don't have a rinkeby node synced)

@enertom
Copy link
Author

enertom commented Sep 30, 2021

@enertom
Copy link
Author

enertom commented Sep 30, 2021

@s1na I built node from https://github.com/s1na/go-ethereum/tree/fix/call-tracer-fault : TypeError: cannot read property 'calls' is disappeared, but the error with shutdown doesn't disappear on rinkeby (tried with callTracerLegacy and callTracer).

@holiman
Copy link
Contributor

holiman commented Sep 30, 2021

but the error with shutdown doesn't disappear on rinkeby (tried with callTracerLegacy and callTracer).

How much reexec are you using?

@holiman
Copy link
Contributor

holiman commented Sep 30, 2021

I've had the same crash (without stacktrace) when I tried it via docker, but it worked perfectly (both legacy and normal) on native geth.

@enertom
Copy link
Author

enertom commented Oct 1, 2021

but the error with shutdown doesn't disappear on rinkeby (tried with callTracerLegacy and callTracer).

How much reexec are you using?

I don't use reexec, i have full archive node --syncmode full --gcmode=archive

@enertom
Copy link
Author

enertom commented Oct 1, 2021

I've had the same crash (without stacktrace) when I tried it via docker, but it worked perfectly (both legacy and normal) on native geth.

@holiman I tried without docker - it's working. Thanks for the temporary solution

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

Successfully merging a pull request may close this issue.

7 participants