-
Notifications
You must be signed in to change notification settings - Fork 992
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
Enable block archival sync #3579
Conversation
d8651b3
to
667624c
Compare
If we have consensus that this is something we want to roll out to The "bootstrapping" change (discussed above) will ensure network traffic and peering is unaffected for non-archive nodes (archival sync restricted to known archive peers). |
I understand @quentinlesceller is experiencing really slow archive sync. |
I completed a sync on bare metal i9 cpu + ssd in just over 38 hours. |
For reference a $5/month Digital Ocean instance sync'd in about 20 hours. |
My test sync was done with 1 GB fiber... ftr: the sync started with 3 peers, gained peers over the first few hours, and ended with (currently has) 7 peers. one more note: my test sync did not allow inbound connections, all outbound |
Is this with |
f3ea67d
to
916521a
Compare
Going to merge this to |
* wip - body sync for full archive * allow chain compaction during sync * placeholder for logic to ensure archive nodes sync from archive nodes * body sync from archival peers * allow chain compaction during sync * placeholder for logic to ensure archive nodes sync from archive nodes
Archival Peers (as of 20210315) -
78.47.168.92:3414
46.101.247.184:3414
3.81.230.109:3414
23.124.76.209:3414
Two relatively minor changes that allow a node to run in "block archival mode" and sync fully from other archival peers.
This works in conjunction with various related PRs recently merged.
check_txhashset_needed()
if running witharchive_mode
enabledThe local
chain_data
dir should be cleared out prior to a full archival sync - the node will sync from scratch.A node will only be able to sync historical blocks from other archival nodes.
The best way of configuring the local node to peer with archival nodes is via the following config.
Once the node has completed an archival sync we can update the config to allow other nodes to connect.
Full archival sync takes several hours to complete, probably close to 24 hours.
On completion the local node will have full block history from height 1 onwards.
Disk usage is approx 9.5GB for a full archival node.
It is anticipated that
peers_preferred
will be a required config for archival nodes, to ensure we good good connectivity.The additional
peers_allow
config is a temporary solution while we test this out prior to having nodes correctly advertising archival capabilities.TODO
preferred
peers for bootstrapping5.1.0