-
Notifications
You must be signed in to change notification settings - Fork 38.7k
Add unstored orphans with rejected parents to recentRejects #9261
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
|
utACK. Will test. |
|
You might want to rebase on #9260. |
|
rebased on the grave of main.cpp |
|
ACK. |
|
utACK dfbe0d5 |
|
Please tag 0.14 Not important but simple change which will cut down on some completely unnecessary network requests |
|
So, post-segwit, a parent tx sent with malleated witness would (after this patch) cause an orphan descendant tx to be added to the reject filter, even though the parent txid is not added to the reject filter. I'm not sure whether the orphan case is common enough for this to be a significant concern, however? EDIT: Actually -- I guess the condition here is that the parents are all in the reject filter, so what I wrote is incorrect? Never mind! utACK dfbe0d5 |
|
utACK dfbe0d5 |
dfbe0d5 Add unstored orphans with rejected parents to recentRejects (Alex Morcos)
…entRejects dfbe0d5 Add unstored orphans with rejected parents to recentRejects (Alex Morcos)
…entRejects dfbe0d5 Add unstored orphans with rejected parents to recentRejects (Alex Morcos)
…entRejects dfbe0d5 Add unstored orphans with rejected parents to recentRejects (Alex Morcos)
…dablock committed on Jan 20, 2018 Use version 2 blocks for miner_tests … @codablock codablock committed on Jan 20, 2018 Merge bitcoin#7871: Manual block file pruning. … @laanwj @codablock laanwj authored and codablock committed on Jan 11, 2017 Merge bitcoin#9507: Fix use-after-free in CTxMemPool::removeConflicts() … @sipa @codablock sipa authored and codablock committed on Jan 11, 2017 Merge bitcoin#9297: Various RPC help outputs updated … @MarcoFalke @codablock MarcoFalke authored and codablock committed on Jan 12, 2017 Merge bitcoin#9416: travis: make distdir before make … @MarcoFalke @codablock MarcoFalke authored and codablock committed on Jan 12, 2017 Merge bitcoin#9520: Deprecate non-txindex getrawtransaction and bette… … @MarcoFalke @codablock MarcoFalke authored and codablock committed on Jan 12, 2017 Merge bitcoin#9518: Return height of last block pruned by pruneblockc… … @MarcoFalke @codablock MarcoFalke authored and codablock committed on Jan 12, 2017 Merge bitcoin#9472: Disentangle progress estimation from checkpoints … … @laanwj @codablock laanwj authored and codablock committed on Jan 12, 2017 Merge bitcoin#8883: Add all standard TXO types to bitcoin-tx … @laanwj @codablock laanwj authored and codablock committed on Jan 12, 2017 Merge bitcoin#9261: Add unstored orphans with rejected parents to rec… … @laanwj @codablock laanwj authored and codablock committed on Jan 12, 2017 Merge bitcoin#9468: [Depends] Dependency updates for 0.14.0 … @laanwj @codablock laanwj authored and codablock committed on Jan 12, 2017 Merge bitcoin#9222: Add 'subtractFeeFromAmount' option to 'fundrawtra… … @laanwj @codablock laanwj authored and codablock committed on Jan 12, 2017 Merge bitcoin#9490: Replace FindLatestBefore used by importmuti with … … @sipa @codablock sipa authored and codablock committed on Jan 13, 2017 Merge bitcoin#9469: [depends] Qt 5.7.1 … @laanwj @codablock laanwj authored and codablock committed on Jan 15, 2017 Merge bitcoin#9380: Separate different uses of minimum fees … @laanwj @codablock laanwj authored and codablock committed on Jan 16, 2017 Remove SegWit related code in dash-tx @codablock codablock committed on Sep 21, 2017 Merge bitcoin#9561: Wake message handling thread when we receive a ne… … @sipa @codablock sipa authored and codablock committed on Jan 17, 2017 Merge bitcoin#9508: Remove unused Python imports … @MarcoFalke @codablock MarcoFalke authored and codablock committed on Jan 18, 2017 Merge bitcoin#9512: Fix various things -fsanitize complains about
Orphan txs that are not stored as orphans because of rejected parents, will not be found by AlreadyHave and so will be requested from each peer that inv's them to us. This will prevent those unnecessary re-requests and when the parent is cleared from recentRejects on a new block, the orphan will have been cleared as well.
Future improvements may be to intelligently save rejected txs (for compact block reconstruction) or rerequest rejected parents (in case of CPFP) but for now this is an improvement.