When a bitcoin core node is fully synced, does it broadcast to the rest of the network that is has finished syncing? If yes, where in the bitcoin-core source code is this implemented?
3 Answers
No. The nodes notify only about block height in the beginning of connection in version
message. When node wants to notify about new block/tx it received/created, it uses inv
message.
There is no point to notify other peers about downloading full blockchain. Other nodes have nothing to do with such information.
-
It would be useful for blockchains that have very slow blocks, ie >24 hours as -maxtipage of bitcoin 24 hours causes a bug in the blockchain where users cannot use rpc mining commands, since the code thinks it is still downloading the initial blockchain. Thanks for your answer btw Commented Jan 15, 2019 at 0:42
-
@BarneyChambers that's interesting, but no one will use such slow blockchain– ZergatulCommented Jan 15, 2019 at 0:44
-
this has happened to a few blockchains ;) Brazio, Octocoin to name just 2 Commented Jan 15, 2019 at 8:00
No, for the simple reason that the network do not need to know when and if a node finish syncing to latest block height.
That's irrelevant to the blockchain network so there isn't any sort of syncing complete message broadcasting.
No it doesn't broadcast a message like that.
Your bitcoin node doesn't know when it's fully synced. All it knows for sure is that it's up to par with all the nodes its currently connected to.
At any given moment, your node is working to be as synced as possible, listening to its peers. But that means you have to trust what they tell you, and trust that they are also up to date. Certainty is impossible, but the probability is pretty high (>99%) that you're up to sync when connected to several peers. The general rule is that if you connect to 8 peers, you can reach everyone. Even if a few are dishonest, the rest aren't, and all you need is one telling the truth.
What your node does broadcast is what services it offers, its version number, the time, and its current blockheight.