livepeer / livepeer/go-livepeer
Support alternate gas price oracle implementations
Nobody has claimed this yet.
- Dominant language
- Go
- Stars
- 586
- Forks
- 226
- Avg merge
- 1d 17h
- Merged PRs (30d)
- 19
Description
Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
Currently, the node determines the gas price to use for transactions by asking its ETH JSON-RPC provider for a gas price suggestion using the eth_gasPrice RPC call. The gas price returned by this RPC call may not be a very good estimate of the gas price required to get a transaction in a block since the estimation for this RPC call will depend on the data that the ETH JSON-RPC provider has available. As a result, the node may end up overpaying for transactions by using a gas price that is higher than what is actually required.
Describe the solution you'd like
A clear and concise description of what you want to happen.
A few options to consider for improving on the status quo:
- Support integrating with services such as https://www.gasnow.org/, https://ethgasstation.info/ or https://etherscan.io/gastracker
- Add support for integrating your own custom gas price oracle. This could be useful if you're running your own geth node since you can configure the gas price oracle settings on geth with CLI flags
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by locating the node's current use of the eth_gasPrice JSON-RPC call. Compare the requested service integrations with the custom oracle option and clarify the configuration and selection behavior before implementation. Done means the node can use an alternate gas price oracle instead of relying only on the provider suggestion.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go
- Domain
- blockchain
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100