Skip to content

Conversation

@furszy
Copy link

@furszy furszy commented Oct 28, 2021

Backports #2611 for v5.3.3

So we do a release focused on solving tier two network synchronization and re-synchronization issues that are mainly affecting the superblock payments window and causing network forks.

Update:
Added #2617 and #2622 as well.

furszy added 24 commits October 27, 2021 15:11
…sn't done.

plus decrease the possible mn list sync request time to 1 hour instead of 3.
…m different peers in case of needing it.

In the previous flow, if one of the requests failed for an already asked sync request (blocked period) or any other issue, the sync requests to the peers that come after it, in an ordered list, were never done.
Before, once the first budget sync message was received, the complete budget sync requests were blocked for the entire peer's life cycle.
This modifies the behaviour to block it only for an hour after the budget sync request reception.
…st sync" DoS validation.

And decrease DoS penalization to 20 for now (this will be totally erased on v6.0).
…hen the item is received.

The inv item is stored forever in the set.. which will grow infinitely with all the asked for INVs and block any possible subsequent request.
Performed after a chain + tier two data removal.
added 15 more proposals to have a higher network movement in the test.
…ode addr that causes a signature verification failure.
The mnb can easily be invalid, it's arriving from the network
Added the following changes:
1) Do not accept txs nor tier two INV messages during IBD (with only one exception).
   None of the received data can be validated without be synced with the chain.
2) Only accept sporks during IBD, they are always welcome.
…phase.

It simply makes no sense to relay mnb, votes, proposals, etc. to the peers from where we are synchronizing our initial state while we are doing it.
As they are not totally connected to us, if we send any INV msg they will raise the DoS scoring.
We already have it, no need to continue requesting it to anyone else.
@furszy furszy self-assigned this Oct 28, 2021
@furszy furszy changed the title [Backport] 5.3.2.2 backports [Backport] 5.3.3 backports Oct 29, 2021
@furszy furszy added this to the 5.3.2.2 milestone Oct 29, 2021
On the Welcome screen, when users change the language, a call to Qt's
internal `retranslateUi()` is made. This, however does not take into
consideration any arguments in a source string, and instead treats them
as string literals (ie, `%1` is not considered an argument, but rather a
 literal string)

Fix this by adding a supplemental call to `setText()` that DOES allow
for argument processing directly after the retranslation.
@furszy
Copy link
Author

furszy commented Oct 29, 2021

Added trivial #2617 as well.

…chronization state.

if it happens before or while the node's tier two initial synchronization is being executed, the peer will move to single items requests instead of requesting the full list.

Plus, decrease the DoS score for a bad mnb signature during the initial synchronization process, so we don't end up banning pre v5.3.3 nodes too fast for an invalidly serialized mnb (this issue was solved in bitcoin#2611 removing the mnb BIP155 flag, this is only an extra guard to give a bit more time to non-updated peers to upgrade while the network is upgrading).
@random-zebra
Copy link

Looks like a couple cleanup commits from #2611 were skipped:

To backport the first one easier you could include #2549 + #2552

@furszy
Copy link
Author

furszy commented Nov 1, 2021

I did not backport them on purpose, to not extend v5.3.3 more than what it should. Those are only small code cleanups, not related to v5.3.3 goal, that require other code cleanups dependencies (that could or not require other PRs).

if you have a strong reason to include them, can check them once more and add them but if not, it would be simpler to move forward without them.

Copy link

@random-zebra random-zebra left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

utACK e43a239 then

@furszy furszy requested a review from Fuzzbawls November 1, 2021 13:24
Copy link
Collaborator

@Fuzzbawls Fuzzbawls left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ACK e43a239

@furszy furszy merged commit 0f658d4 into PIVX-Project:5.3 Nov 2, 2021
@furszy furszy deleted the 2021_5.3.2.2_backports branch November 29, 2022 14:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants