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
In case of network instability up to a level in which it becomes difficult to sync to an accepted canonical chain,
we could implement a syncing strategy that could work as follows:
when the sync service starts, it will give precedence to that content, and, for each slot in sequence it will make sure that current node is on that fork.
if a slot,block-root is not found in our recentChainData, then it will try to look up it with a BlockByRange\BlobsByRange with a count set to 1 (single slot lookup).
on empty response or blockRoot not matching -> immediately disconnect from peer and retry with another one
if found, import it and keep going with next slot,blockRoot
when the end of the file is reached, we will be on that fork, and we can resume the normal syncing
regularly (every a configurable amount of time, default 1min?), refresh the content and do the check again, just in case the content is updated with more recent slots. If refresh happens while still doing the pinning sync, i think we should stop what we are doing and rerun the process, just in case the file gets updated with a different fork (maybe we are struggling trying to find a peer to download a slot,blockRoot and the new file is not containing that anymore)
In this way we should:
disconnect from peers that are not on the pinned canonical chain.
sync the chain faster and not get fooled by dead-ended forks.
The text was updated successfully, but these errors were encountered:
In case of network instability up to a level in which it becomes difficult to sync to an accepted canonical chain,
we could implement a syncing strategy that could work as follows:
--Xp2p-pinning-fork-sync-file=/opt/pinned-fork.json|https://raw.github..../pinned-fork.json
content will be
[<slot,block_root>]
:slot,blockRoot
slot,blockRoot
and the new file is not containing that anymore)In this way we should:
The text was updated successfully, but these errors were encountered: