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

Transaction gossip inconsistency during high traffic #16257

Open
2 tasks done
deepthiskumar opened this issue Oct 17, 2024 · 0 comments
Open
2 tasks done

Transaction gossip inconsistency during high traffic #16257

deepthiskumar opened this issue Oct 17, 2024 · 0 comments
Assignees
Labels
bug mina-node Issues related to all types of mina node triage

Comments

@deepthiskumar
Copy link
Member

Preliminary Checks

Description

During high traffic such as staking payouts, nodes drop transactions requiring senders to retry multiple times

Steps to Reproduce

Create simple value transfer txns once in 3-5 seconds in total # of txn to be ~150-200

Expected Result

Transactions should be included in blocks

Actual Result

Some transactions get dropped

Daemon version

How frequently do you see this issue?

Frequently

What is the impact of this issue on your ability to run a node?

High

Status

NA

Additional information

Related tickets
Transactions removed from mempool
Investigate: Inconsistent Transaction Pool Sizes on gossipqa
payment transaction dropped after inclusion in orphan
Issues with the mempool empty. My mempool is different from the others.
#9868

Potential solutions:

  1. Pull based transaction pool sync: Current rebroadcast logic is not robust; nodes that initiate transactions are the ones rebroadcasting. But due to the delay in propagating the transactions can still arrive out of order and therefore be rejected. Also, if a node restarts outside the rebroadcast window which is 50mins, then they don't receive any of the old transactions since mempool is not persisted across restarts. Mempool can be persisted but there is still the issue of transactions dropping when received out of order.
    To get around this, one solution is for nodes to request transactions from peers after catchup and/or periodically when synced.
  2. Adding bitswap should alleviate the issue further as transactions can be forwarded with minimum delay
  3. Another potential solution is described in The lost transactions issue. #13313 where node allows for nonce gaps in the mempool.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug mina-node Issues related to all types of mina node triage
Projects
Status: No status
Development

No branches or pull requests

2 participants