Cache eth.chain_id in simple_cache_middleware #2425
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
What was wrong?
It was not ideal to have to set
_default_chain_id=None
to make thechain_id
request again. Added the syncchain_id
to thesimple_cache_middleware
instead. Our benchmarking suite shows times of ~.003s afterchain_id
is cached, which is down from ~.017s.How was it fixed?
Added
eth_chainId
to thesimple_cache_middleware
. Had to take out the async_default_chain_id
flow for consistency between the two modules, and will add caching for asyncchain_id
after thesimple_cache_middleware
gets asyncified.Todo:
Cute Animal Picture