Replace setInventoryKnown with a rolling bloom filter (rebase of #7100) #7133
pull sipa wants to merge 6 commits into bitcoin:master from sipa:known_bloom changing 8 files +16 −166-
sipa commented at 12:31 pm on November 30, 2015: member
-
Replace setInventoryKnown with a rolling bloom filter.
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.)
-
Remove mruset as it is no longer used. e20672479e
-
Rename setInventoryKnown filterInventoryKnown 6b849350ab
-
Only use filterInventoryKnown with MSG_TX inventory messages.
Previously this logic could erroneously filter a MSG_BLOCK inventory message.
-
Actually only use filterInventoryKnown with MSG_TX inventory messages.
Previously this logic could erroneously filter a MSG_BLOCK inventory message.
-
When not filtering blocks, getdata sends more in one test aa4b0c26b0
-
jtimon commented at 3:30 pm on November 30, 2015: contributorutACK
-
gmaxwell commented at 0:05 am on December 2, 2015: contributorACK
-
in src/net.cpp: in aa4b0c26b0
2341@@ -2342,7 +2342,7 @@ unsigned int SendBufferSize() { return 1000*GetArg("-maxsendbuffer", DEFAULT_MAX 2342 CNode::CNode(SOCKET hSocketIn, const CAddress& addrIn, const std::string& addrNameIn, bool fInboundIn) : 2343 ssSend(SER_NETWORK, INIT_PROTO_VERSION), 2344 addrKnown(5000, 0.001), 2345- setInventoryKnown(SendBufferSize() / 1000) 2346+ filterInventoryKnown(50000, 0.000001)
dcousens commented at 2:37 am on December 2, 2015:Why50000
OOI? Should this be a named constant?dcousens commented at 2:38 am on December 2, 2015: contributorutACKdcousens commented at 2:41 am on December 2, 2015: contributorAlso ACK on FP ratio of0.000001:1
petertodd commented at 10:43 am on December 3, 2015: contributorutACKlaanwj merged this on Dec 3, 2015laanwj closed this on Dec 3, 2015
laanwj referenced this in commit 8843676621 on Dec 3, 2015laanwj commented at 12:17 pm on December 3, 2015: memberutACKgmaxwell referenced this in commit f31955d9da on Dec 4, 2015morcos commented at 3:42 pm on December 11, 2015: memberposthumous utACK. nice.laanwj added the label P2P on Jul 18, 2016random-zebra referenced this in commit 8bbc0650e6 on Jul 1, 2020zkbot referenced this in commit 9dd55615d0 on Feb 22, 2021zkbot referenced this in commit 2aa9fbbdfe on Mar 5, 2021zkbot referenced this in commit a7e877a350 on Aug 13, 2021DrahtBot locked this on Sep 8, 2021
github-metadata-mirror
This is a metadata mirror of the GitHub repository bitcoin/bitcoin. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2024-12-18 21:12 UTC
This is a metadata mirror of the GitHub repository bitcoin/bitcoin. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2024-12-18 21:12 UTC
This site is hosted by @0xB10C
More mirrored repositories can be found on mirror.b10c.me
More mirrored repositories can be found on mirror.b10c.me