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

feat(ethexe-tx-pool): introduce proper tx pool integration with rpc and service #4427

Merged
merged 11 commits into from
Jan 17, 2025

Conversation

techraed
Copy link
Member

This PR is to be review/merged after #4366.

It brings several updates:

  • RPC now accepts proper data for sending message to the program
  • Complex tx validation with different validators (mortality, signature, uniqueness, executable) is delivered. Validators are tested.
  • Output task for requesting the execution
  • Input task for requesting pre-execution validation
  • Tests for the tx pool AddTransaction and CheckPreExecutionTransactionValidity tasks are updated. Tests there mostly focus on the correctness of business logic and implementation (channels not panicking and etc.) stuff. The gossip test in ethexe-cli is now a base for an integration layer testing for the tx pool service.
  • Transaction trait is now an extension over several smaller traits defining behaviour for getting tx signature, hash, reference block hash and etc.
  • DB now has recent block hashes window (30 blocks for now). That's a window of latest valid blocks that is used for checking transaction mortality. Whenever a valid block is set, the window is updated.
  • TxPool* related traits and types were removed.

Some security considerations must be taken into account like the 1) window state while syncing, 2) not accepting txs when syncing, 3) proper (deterministic, same for all the nodes) order of execution of the transactions in the pool and etc. Everything is stated in todos marked with issue number in gh.

@techraed techraed added the A0-pleasereview PR is ready to be reviewed by the team label Dec 26, 2024
@techraed techraed self-assigned this Dec 26, 2024
@techraed
Copy link
Member Author

Actual execution is scheduled to be done by @breathx

@techraed techraed marked this pull request as ready for review January 16, 2025 21:46
@techraed techraed merged commit bbcb81e into st-tx-pool-ethexe Jan 17, 2025
@techraed techraed deleted the st-tx-pool-ethexe2 branch January 17, 2025 07:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A0-pleasereview PR is ready to be reviewed by the team
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant