-
Notifications
You must be signed in to change notification settings - Fork 685
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Fix: #2389 Mempool walks, add try-mine
CLI command
#2392
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, thanks for tackling this! Just one minor comment.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good to me, thank you @kantai!
This pull request has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs. |
This PR addresses the most immediate mempool issue #2389, by modifying the walk logic to "try again" if there are mempool entries received at a particular height but not in the same fork.
This PR also adds a
try-mine
CLI command, as well as a diagnostic envarMEMPOOL_BAD_BEHAVIOR
which executes the mempool walk in the manner that causes #2389.This leaves unaddressed two potential issues:
A
, but blockA
is "forked away". Those transactions will not appear in the miner's walk. However, such transactions will be viable for "replace-across-forks", such that if the transaction is rebroadcasted (not re-signed or fee upgraded), the miner will replace the existing tx in the mempool. (Issue: Mempool transactionsaccepted_at
different forks are not considered #2394)I think #2389 is much worse than those two issues at the moment, so I'm not sure if we should try to address those issues at the same time, or instead split it into multiple releases.