You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on May 16, 2023. It is now read-only.
When a contract is deployed, called, or receives a transaction and there is an error we don’t receive any valuable debug information. For instance if the contract code panics or there is not enough gas or there is an issue with the Wasm interpreter. To make debugging easier the tools like the client and the osc-deploy command should provide more information when there is an error.
Fortunately, Parity Ethereum provides the Trace API. The simplest solution for debugging would be to write a small CLI tool that retrieves the trace given a transaction hash (using trace_transaction) and ensure that the transaction hash is printed when an error occurs.
Since this would only work for transactions we would need a different mechanism for calls to a contract. Here the client could use trace_call method when an environment variable is set and print the trace on error. The same behavior could be used for transactions to avoid having to use a different CLI to further inspect an error.
The text was updated successfully, but these errors were encountered:
Sign up for freeto subscribe to this conversation on GitHub.
Already have an account?
Sign in.
When a contract is deployed, called, or receives a transaction and there is an error we don’t receive any valuable debug information. For instance if the contract code panics or there is not enough gas or there is an issue with the Wasm interpreter. To make debugging easier the tools like the client and the
osc-deploy
command should provide more information when there is an error.Fortunately, Parity Ethereum provides the Trace API. The simplest solution for debugging would be to write a small CLI tool that retrieves the trace given a transaction hash (using
trace_transaction
) and ensure that the transaction hash is printed when an error occurs.Since this would only work for transactions we would need a different mechanism for calls to a contract. Here the client could use
trace_call
method when an environment variable is set and print the trace on error. The same behavior could be used for transactions to avoid having to use a different CLI to further inspect an error.The text was updated successfully, but these errors were encountered: