nanocurrency / nano-node

Nano is digital currency. Its ticker is: XNO and its currency symbol is: Ӿ
https://nano.org
BSD 3-Clause "New" or "Revised" License
3.48k stars 786 forks source link

Only bootstrap cemented blocks? #2945

Open qwahzi opened 3 years ago

qwahzi commented 3 years ago

Per #beta-net discussion on Discord, it seems like some nodes might be trying to bootstrap forked blocks. Is it possible to only bootstrap cemented blocks? Seems like an easy win for both less bandwidth usage and improved fork resolution (fewer repeat forks), but I'm not sure sure if this has any hidden implications or difficult implementation issues.

wezrule commented 3 years ago

Thanks! It's implemented here: https://github.com/nanocurrency/nano-node/pull/3047 Will be cherry-picked in DB10 to see if there's any issues that arise

qwahzi commented 2 years ago

@zhyatt - Is this solved by the linked PRs? https://github.com/nanocurrency/nano-node/pull/3152 (replacing https://github.com/nanocurrency/nano-node/pull/3047). Not sure if "optionally send confirmed frontiers" is the same as "only send confirmed frontiers for bootstrap"

zhyatt commented 2 years ago

@zhyatt - Is this solved by the linked PRs? #3152 (replacing #3047). Not sure if "optionally send confirmed frontiers" is the same as "only send confirmed frontiers for bootstrap"

@qwahzi PR #3152 only implements the option to ask for confirmed blocks only on bootstrap, but does not set that as the default. It is mostly a debug option at this point. Although I don't recall the specific issues with bootstrapping on confirmed blocks, there are some considerations which may not allow this to be fully implemented. It needs further research so I have added it to the milestone for that.