backport: merge bitcoin#19776, #20599, #22147, #22340, #20799, #25147, #20764, bitcoin-core/gui#206 (BIP152 backports)#6048
Merged
PastaPastaPasta merged 8 commits intodashpay:developfrom Jun 11, 2024
Conversation
|
This pull request has conflicts, please rebase. |
UdjinM6
approved these changes
Jun 10, 2024
…r v1 compact blocks)
knst
approved these changes
Jun 11, 2024
Collaborator
There was a problem hiding this comment.
utACK 1cbf3b9
Though, these changes - are not breaking changes, should it be excluded from PR description? They require release notes indeed (already done).
The getpeerinfo RPC returns two new boolean fields, bip152_hb_to and bip152_hb_from, that respectively indicate whether we selected a peer to be in compact blocks high-bandwidth mode or whether a peer selected us as a compact blocks high-bandwidth peer.
| @@ -249,23 +252,13 @@ def check_announcement_of_new_block(node, peer, predicate): | |||
| check_announcement_of_new_block(node, test_node, lambda p: "cmpctblock" in p.last_message) | |||
|
|
|||
| # Try one more time, after sending a version-1, announce=false message. | |||
Collaborator
There was a problem hiding this comment.
nit-20799: missing changes
version=1
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Additional Information
Version 2 of BIP152 high-bandwidth mode/compact blocks implements SegWit support.
As Dash does not implement SegWit, there has never been a need to implement v2 (and therefore, have all the code necessary to support both v1 and v2, that gets removed as part of making support v2 only).
bitcoin#19776 doesn't seem to work on its own without successive backports, specifically bitcoin#20799, despite the latter being a later backport.
19776-only p2p_compactblocks.py run (9f2c868947cc254d021e1a9bd00eb7bc80061e81)
20799-incl p2p_compactblocks.py run (aa116c4f0b4753b615f9483aa03adec5ee4fd655)
The backport of bitcoin-core/gui#206 is a continuation of 3e8ba24 from dash#5964
The backport of bitcoin#20764 is a continuation of bd934c7 from dash#6034
Breaking changes
The
getpeerinfoRPC returns two new boolean fields,bip152_hb_toandbip152_hb_from, that respectively indicate whether we selected a peer to be in compact blocks high-bandwidth mode or whether a peer selected us as a compact blocks high-bandwidth peer.High-bandwidth peers send new block announcements via a
cmpctblockmessage rather than the usual inv/headers announcements. See BIP 152 for more details.Blocks-only mode will use legacy relaying instead of BIP152 high-bandwidth mode
Checklist: