-
Notifications
You must be signed in to change notification settings - Fork 2.2k
Replace setInventoryKnown with a rolling bloom filter #4997
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
Conversation
Mruset setInventoryKnown was reduced to a remarkably small 1000 entries as a side effect of sendbuffer size reductions in 2012. This removes setInventoryKnown filtering from merkleBlock responses because false positives there are especially unattractive and also because I'm not sure if there aren't race conditions around the relay pool that would cause some transactions there to be suppressed. (Also, ProcessGetData was accessing setInventoryKnown without taking the required lock.)
Previously this logic could erroneously filter a MSG_BLOCK inventory message.
Previously this logic could erroneously filter a MSG_BLOCK inventory message.
nuttycom
left a 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.
utACK, verified against bitcoin/bitcoin#7133
|
Not merging this until after the 4.3.0 release. |
|
But in the meantime: @zkbot try |
Replace setInventoryKnown with a rolling bloom filter Cherry-picked from bitcoin/bitcoin#7133. - Excluding for last commit, which needs bitcoin/bitcoin#7129. Part of #2074.
|
☀️ Test successful - pr-try |
daira
left a 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.
utACK. @str4d is checking whether there have been any upstream changes to CRollingBloomFilter.
|
There have been; I will backport them in a separate PR. @zkbot r+ |
|
📌 Commit 227933f has been approved by |
Cherry-picked from bitcoin/bitcoin#7133.
Part of #2074.