-
Notifications
You must be signed in to change notification settings - Fork 1
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
Check and correct tracing after fee currency addition #69
Comments
Issues have been created for those - https://github.com/celo-org/optimism/issues/74 - https://github.com/celo-org/optimism/issues/76
Issues have been created for those - https://github.com/celo-org/optimism/issues/74 - https://github.com/celo-org/optimism/issues/76
Issues have been created for those - https://github.com/celo-org/optimism/issues/74 - https://github.com/celo-org/optimism/issues/76
Issues have been created for those - https://github.com/celo-org/optimism/issues/74 - https://github.com/celo-org/optimism/issues/76
Without further modifications, we currently see the following issues when tracing fee currency txs:
The problems with the prestate tracer can only be fixed by initializing the tracing earlier, since there is not safe generic way to undo the debit. The major tracing changes in geth 1.14 will help with this but are not yet included in op-geth (update PR). Since waiting for these changes should make a proper solution for the prestate tracer possible and will reduce rebasing work, I suggest to delay implementing this. Some commits I collected while experimenting can be found at https://github.com/celo-org/op-geth/compare/celo7...celo-org:op-geth:karlb/tracing-stash?expand=1. |
But we can already collect some thoughts on how these tracers should work. Call tracerUsually, debiting and crediting does not show up in the call trace, since no calls are used in the process. With fee currencies, two calls are used in addition to the main tx call. I assume that most users will expect the same call trace result no matter how the fees are paid. Therefore, tracing should be disabled for debiting and crediting by default. We could provide a special fee currency call tracer that includes debit and credit and returns three top level calls. It is unclear if there is any demand for this and whether people will find out how to enable non-standard tracers. Thoughts? Prestate tracerThe prestate tracer's result must be sufficient to execute the traced tx. This only works if
|
This test exercises both the call tracer and the transfer precompile. It is the first test that checks for the gas cost and return value of the precompile. See #69
The precompile must show up as a CALL in call tracing. This test exercises both the call tracer and the transfer precompile. It is the first test that checks for the gas cost and return value of the precompile. See #69
The precompile must show up as a CALL in call tracing. This test exercises both the call tracer and the transfer precompile. It is the first test that checks for the gas cost and return value of the precompile. See #69
The precompile must show up as a CALL in call tracing. This test exercises both the call tracer and the transfer precompile. It is the first test that checks for the gas cost and return value of the precompile. See #69
The precompile must show up as a CALL in call tracing. This test exercises both the call tracer and the transfer precompile. It is the first test that checks for the gas cost and return value of the precompile. See #69
The precompile must show up as a CALL in call tracing. This test exercises both the call tracer and the transfer precompile. It is the first test that checks for the gas cost and return value of the precompile. See #69
The precompile must show up as a CALL in call tracing. This test exercises both the call tracer and the transfer precompile. It is the first test that checks for the gas cost and return value of the precompile. See #69
The precompile must show up as a CALL in call tracing. This test exercises both the call tracer and the transfer precompile. It is the first test that checks for the gas cost and return value of the precompile. See #69
The precompile must show up as a CALL in call tracing. This test exercises both the call tracer and the transfer precompile. It is the first test that checks for the gas cost and return value of the precompile. See #69
The precompile must show up as a CALL in call tracing. This test exercises both the call tracer and the transfer precompile. It is the first test that checks for the gas cost and return value of the precompile. See #69
The precompile must show up as a CALL in call tracing. This test exercises both the call tracer and the transfer precompile. It is the first test that checks for the gas cost and return value of the precompile. See #69
Part of celo-org/optimism#6
One test was removed in d694fb7defc907ad269d0a179c1d2168c2fabfbd , because of a bug in the test setup. This also exists in upstream geth, and should be reported there.Test is fixed in a proper way in c66ca8b#diff-13c76087ba15a5cdb7f3003416a918dd7269b3fac232fc98908d8be927fed6d9.The text was updated successfully, but these errors were encountered: