Skip to content
This repository has been archived by the owner on Nov 6, 2020. It is now read-only.

Differentiate between manual throw and natural gas exhaustion #6155

Closed
rphmeier opened this issue Jul 26, 2017 · 3 comments · Fixed by #9824
Closed

Differentiate between manual throw and natural gas exhaustion #6155

rphmeier opened this issue Jul 26, 2017 · 3 comments · Fixed by #9824
Assignees
Labels
F7-optimisation 💊 An enhancement to provide better overall performance in terms of time-to-completion for a task. M4-core ⛓ Core client code / Rust. P7-nicetohave 🐕 Issue is worth doing eventually.
Milestone

Comments

@rphmeier
Copy link
Contributor

In the light client, when executing eth_call or eth_estimateGas, we start with a small amount of gas and double it each time the result is exceptional, until the block gas limit is reached. Being able to differentiate between the request actually running out of gas and a deliberate throw would let us avoid making many redundant requests.

@rphmeier rphmeier added F7-optimisation 💊 An enhancement to provide better overall performance in terms of time-to-completion for a task. M4-core ⛓ Core client code / Rust. labels Jul 26, 2017
@5chdn 5chdn added the P7-nicetohave 🐕 Issue is worth doing eventually. label Sep 4, 2017
@5chdn 5chdn added this to the 1.10 & ... milestone Oct 5, 2017
@5chdn 5chdn modified the milestones: 1.10, 1.11 Jan 23, 2018
@5chdn 5chdn modified the milestones: 1.11, 1.12 Mar 1, 2018
@5chdn 5chdn modified the milestones: 1.12, 1.13 Apr 24, 2018
@rphmeier
Copy link
Contributor Author

I think this is already handled but we don't have a test for it. We should just try the rpc::light_helpers::execute_tx with a proof of some call that throws. Probably easier said than done -- setting up the contract, state, and state proof necessary for that will probably be a nuisance.

@folsen
Copy link
Contributor

folsen commented May 19, 2018

@tomaka Anything you'd be interested in picking up?

@tomaka
Copy link
Contributor

tomaka commented May 20, 2018

I can pick this up in the next few weeks.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
F7-optimisation 💊 An enhancement to provide better overall performance in terms of time-to-completion for a task. M4-core ⛓ Core client code / Rust. P7-nicetohave 🐕 Issue is worth doing eventually.
Projects
None yet
5 participants