This repository has been archived by the owner on Apr 4, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 562
Problem: iterator on deeply nested cache contexts is extremely slow #616
Comments
11 tasks
yihuang
added a commit
to yihuang/ethermint
that referenced
this issue
Oct 3, 2021
Closes: evmos#616 Solution: - flatten cache contexts before doing `GetTxLogsTransient`
yihuang
added a commit
to crypto-org-chain/ethermint
that referenced
this issue
Oct 3, 2021
Closes: evmos#616 Solution: - flatten cache contexts before doing `GetTxLogsTransient`
yihuang
added a commit
to yihuang/ethermint
that referenced
this issue
Oct 4, 2021
Closes: evmos#616 Solution: - flatten cache contexts before doing `GetTxLogsTransient`
fedekunze
added a commit
that referenced
this issue
Oct 5, 2021
* Problem: iterator on deeply nested cache contexts is extremely slow Closes: #616 Solution: - flatten cache contexts before doing `GetTxLogsTransient` * Update x/evm/keeper/context_stack.go * changelog Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com> Co-authored-by: Federico Kunze <federico.kunze94@gmail.com>
fedekunze
added a commit
that referenced
this issue
Oct 7, 2021
* Problem: iterator on deeply nested cache contexts is extremely slow Closes: #616 Solution: - flatten cache contexts before doing `GetTxLogsTransient` * Update x/evm/keeper/context_stack.go * changelog Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com> Co-authored-by: Federico Kunze <federico.kunze94@gmail.com>
fedekunze
added a commit
that referenced
this issue
Oct 7, 2021
* docs: v0.6.0 changelog (#605) (#606) * docs: v0.6.0 changelog * update codeowners * build(deps): bump github.com/cosmos/cosmos-sdk from 0.44.0 to 0.44.1 (#610) * build(deps): bump github.com/cosmos/cosmos-sdk from 0.44.0 to 0.44.1 Bumps [github.com/cosmos/cosmos-sdk](https://github.com/cosmos/cosmos-sdk) from 0.44.0 to 0.44.1. - [Release notes](https://github.com/cosmos/cosmos-sdk/releases) - [Changelog](https://github.com/cosmos/cosmos-sdk/blob/v0.44.1/CHANGELOG.md) - [Commits](cosmos/cosmos-sdk@v0.44.0...v0.44.1) --- updated-dependencies: - dependency-name: github.com/cosmos/cosmos-sdk dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> * changelog Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Federico Kunze <federico.kunze94@gmail.com> * cmd: use config on genaccounts (#483) * cmd: use config on genaccounts * update * c++ * rpc: fix panic (#611) * rpc: fix panic * fix * c++ * rpc: restructure JSON-RPC directory and rename server config (#612) * Restructure ethermint/rpc repo structure and change import statements * Add #400 to changelog * fix filepath in util and json_rpc * Move #400 to unreleased section * evm: refactor `traceTx` (#613) * DNM: debug traceTx * c++ * deps: bump IBC-go (#621) * deps: bump IBC-go * changelog * evm, rpc: fix tx log attribute value is not parsable by some client (#615) * Problem: tx log attribute value not parsable by some client Closes: #614 Solution: - encode the value to json string rather than bytes Apply suggestions from code review * rm cdc and changelog Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com> Co-authored-by: Federico Kunze <federico.kunze94@gmail.com> * evm: fix iterator on deeply nested cache contexts (#617) * Problem: iterator on deeply nested cache contexts is extremely slow Closes: #616 Solution: - flatten cache contexts before doing `GetTxLogsTransient` * Update x/evm/keeper/context_stack.go * changelog Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com> Co-authored-by: Federico Kunze <federico.kunze94@gmail.com> * evm: add benchmark for deep context stack (#627) * Problem: deep context stack efficienty is not benchmarked Closes: #626 Solution: - add a benchmark to demonstrate an extremely inefficiency in deep context stack * Update x/evm/keeper/benchmark_test.go * prefix storage is irrelevant * add comment to state_transition.go Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com> * rpc: support personal apis with different keyring backends (#591) * UPDATE Unlock keyring on start * ADD comment * ADD validation Co-authored-by: Federico Kunze Küllmer <31522760+fedekunze@users.noreply.github.com> * conflicts * changelog Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Daniel Burckhardt <daniel.m.burckhardt@gmail.com> Co-authored-by: yihuang <huang@crypto.com> Co-authored-by: davcrypto <88310031+davcrypto@users.noreply.github.com>
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
System info:
Steps to reproduce:
In Cronos, some contract created 34 layers of Snapshot, results in node execution stuck here.
Expected behavior: should support 34 layers of
Snapshot
call.Actual behavior: node get stuck
Additional info:
The easy solution could be just to flatten the cache contexts before doing the
GetTxLogsTransient
.The long-term solution may be go-ethereum's in-memory journal design?
The text was updated successfully, but these errors were encountered: