Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Problem: transient store usage not compatible with parallel tx execution #450

Merged
merged 3 commits into from
Apr 3, 2024

Conversation

yihuang
Copy link
Collaborator

@yihuang yihuang commented Apr 2, 2024

Currently we use shared transient store keys to accumulate some states, which cause issues when developing parallel tx execution

Solution:

  • remove some transient stores, and patch the tx result after execution with tx/log indexes, the result should be identical to before.
  • the others are used in a per-tx fasion.

Closes: #XXX

Description


For contributor use:

  • Targeted PR against correct branch (see CONTRIBUTING.md)
  • Linked to Github issue with discussion and accepted design OR link to spec that describes this work.
  • Code follows the module structure standards.
  • Wrote unit and integration tests
  • Updated relevant documentation (docs/) or specification (x/<module>/spec/)
  • Added relevant godoc comments.
  • Added a relevant changelog entry to the Unreleased section in CHANGELOG.md
  • Re-reviewed Files changed in the Github PR explorer

For admin use:

  • Added appropriate labels to PR (ex. WIP, R4R, docs, etc)
  • Reviewers assigned
  • Squashed all commits, uses message "Merge pull request #XYZ: [title]" (coding standards)

CHANGELOG.md Outdated Show resolved Hide resolved
@yihuang yihuang mentioned this pull request Apr 2, 2024
7 tasks
@yihuang yihuang requested a review from mmsqe April 2, 2024 07:32
Copy link

codecov bot commented Apr 2, 2024

Codecov Report

Attention: Patch coverage is 39.39394% with 60 lines in your changes are missing coverage. Please review.

Project coverage is 62.80%. Comparing base (078d3b0) to head (c90b3c7).

Additional details and impacted files

Impacted file tree graph

@@             Coverage Diff             @@
##           develop     #450      +/-   ##
===========================================
- Coverage    63.23%   62.80%   -0.43%     
===========================================
  Files          125      129       +4     
  Lines        12097    12121      +24     
===========================================
- Hits          7649     7613      -36     
- Misses        3900     3959      +59     
- Partials       548      549       +1     
Files Coverage Δ
app/ante/handler_options.go 57.54% <100.00%> (ø)
app/ante/setup.go 79.31% <100.00%> (-0.91%) ⬇️
app/app.go 80.55% <100.00%> (+0.02%) ⬆️
x/evm/keeper/abci.go 100.00% <100.00%> (ø)
x/evm/keeper/bloom.go 100.00% <100.00%> (ø)
x/evm/keeper/config.go 94.11% <100.00%> (-0.12%) ⬇️
x/evm/keeper/keeper.go 86.25% <100.00%> (-2.90%) ⬇️
x/evm/keeper/msg_server.go 92.85% <ø> (-0.25%) ⬇️
x/feemarket/keeper/abci.go 80.43% <100.00%> (ø)
x/feemarket/keeper/keeper.go 71.92% <100.00%> (+3.84%) ⬆️
... and 5 more

Currently we use shared transient store keys to accumulate some states,
which cause issues when developing parallel tx execution

Solution:
- remove some transient stores.
- the others are used in a per-tx fasion.

Update CHANGELOG.md

Signed-off-by: yihuang <huang@crypto.com>

cleanup

fix test
app/executor.go Show resolved Hide resolved
@yihuang yihuang enabled auto-merge (squash) April 3, 2024 01:39
@yihuang yihuang merged commit 4e07a42 into crypto-org-chain:develop Apr 3, 2024
35 of 39 checks passed
@yihuang yihuang deleted the tx-executor branch April 3, 2024 02:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants