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
@rphmeier rphmeier added this to Wallet MVP in Light Client Jul 28, 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
@tomaka tomaka moved this from Wallet MVP to Next Up in Light Client Mar 22, 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.

@folsen folsen added this to Directly Pickable in Core May 21, 2018
@5chdn 5chdn modified the milestones: 2.1, 2.2 Jul 17, 2018
@5chdn 5chdn added this to the 2.3 milestone Sep 27, 2018
@niklasad1 niklasad1 self-assigned this Oct 25, 2018
@5chdn 5chdn modified the milestones: 2.3, 2.4 Oct 29, 2018
Light Client automation moved this from Next Up to Done Nov 14, 2018
Core automation moved this from Straightforward Picks to Done Nov 14, 2018
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
Light Client
  
Done
5 participants