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

mempool command has issues #2381

mikehearn opened this issue Mar 18, 2013 · 0 comments

mempool command has issues #2381

mikehearn opened this issue Mar 18, 2013 · 0 comments


Copy link

This is more of a mental note to remind me to fix these things later.

  1. The mempool needs to be topologically sorted before being processed. Otherwise the Bloom filter updating logic doesn't work right - if transaction A which spends to the clients wallet is then spent again by transaction B and the mempool.queryHashes call gives them back in order B,A then the filter will match the latter and not the former.

  2. It will refuse to send more invs than MAX_INV_SZ. This is set to 50k entries so it shouldn't be an actual problem anytime soon.

  3. It does not update setInventoryKnown. If you do a mempool command at the start of a connection and then download them all, a subsequent filtered block will send you the same transactions again even though you already saw them.

The PushInventory() call already solves these problems. It probably makes sense to re-use it.

@laanwj laanwj closed this as completed Mar 6, 2018
@bitcoin bitcoin locked as resolved and limited conversation to collaborators Sep 8, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
None yet

No branches or pull requests

2 participants