You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Syncing nodes can't distinguish the current validators from other nodes since their latest block contains an outdated validator set. But they validators can advertise that they don't have any blocks so that nodes don't send them request for blocks that they want to download.
The text was updated successfully, but these errors were encountered:
When we alter the Validators so that they will always respond with a 'null' response (to indicate that they don't have any blocks) the requesting node retries the range with a different peer. This is desired behaviour.
However, it creates a potential dead-lock. By definition, the non-Validators are generally 'behind' the Validators. In the rare case where restarted Validators are trying to sync, they may not be able to if the only nodes that have the latest blocks are other Validators as the latest blocks have not propagated to non-Validators. This can happen e.g. when the network is restarted before the latest blocks get propagated to the non-Validators.
As seen in this example where the Validator is requesting for blocks [770..772] but the non-Validators only have < 771.
Syncing nodes can't distinguish the current validators from other nodes since their latest block contains an outdated validator set. But
theyvalidators can advertise that they don't have any blocks so that nodes don't send them request for blocks that they want to download.The text was updated successfully, but these errors were encountered: