Skip to content

Conversation

@arya2
Copy link
Contributor

@arya2 arya2 commented Oct 31, 2025

Motivation

Closes #10038.

Solution

  • Logs a warning instead of panicking when a transaction that should be removed from the mempool is missing in the mempool's verified set, and
  • Avoids calling remove() with tx ids that are not in the mempool.

Related:

  • Fixes a bug where mined transactions were not being removed as dependencies of transactions in the mempool.

PR Checklist

  • The PR name is suitable for the release notes.
  • The PR follows the contribution guidelines.
  • The library crate changelogs are up to date.
  • The solution is tested.
  • The documentation is up to date.

conradoplg
conradoplg previously approved these changes Nov 6, 2025
Copy link
Collaborator

@conradoplg conradoplg left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good. I think it just needs making clippy happy

@conradoplg
Copy link
Collaborator

@arya2 just a reminder about this PR that should merge before the release, the clippy fix is related to the PR itself

conradoplg
conradoplg previously approved these changes Nov 11, 2025
@mergify mergify bot added the queued label Nov 11, 2025
mergify bot added a commit that referenced this pull request Nov 11, 2025
@mergify
Copy link
Contributor

mergify bot commented Nov 11, 2025

This pull request has been removed from the queue for the following reason: checks failed.

The merge conditions cannot be satisfied due to failing checks:

You can check the last failing draft PR here: #10078.

You may have to fix your CI before adding the pull request to the queue again.
If you update this pull request, to fix the CI, it will automatically be requeued once the queue conditions match again.
If you think this was a flaky issue instead, you can requeue the pull request, without updating it, by posting a @mergifyio requeue comment.

@mergify mergify bot added dequeued and removed queued labels Nov 11, 2025
…ng from the mempool's verified set instead of panicking
…` where the method could attempt to remove the same transaction twice if it depended on the outputs of another transaction that was just removed.

- Fixes an issue where mined transaction dependencies were not being removed from the mempool's transaction dependencies.
…endent transaction ids for a transaction when removing those dependent transaction.

Updates `clear_mined_dependencies()` to remove keys in the `dependencies` map with empty values.
@mergify mergify bot added the queued label Nov 13, 2025
mergify bot added a commit that referenced this pull request Nov 13, 2025
@mergify mergify bot merged commit 333f4ff into main Nov 13, 2025
84 checks passed
@mergify mergify bot deleted the rm-panic branch November 13, 2025 15:54
@mergify mergify bot removed the queued label Nov 13, 2025
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.

panic: invalid transaction key

3 participants