From what I understand it is the probability that a milestone is selected as a tip?
If this value was a bit higher, would it make the nodes sync faster?
Here are the places in code which I mean:
conf.put(DefaultConfSettings.P_SEND_MILESTONE.name(), "0.02");
L95 &
private Hash getRandomTipPointer() throws Exception {
Hash tip = rnd.nextDouble() < P_SEND_MILESTONE? milestone.latestMilestone: tipsViewModel.getRandomSolidTipHash();
return tip == null ? Hash.NULL_HASH: tip;
}
L450 Source
This relates to the development of Nelson. I am trying to find out whether relatively frequent peer switching could lead to milestone lags.
Here is an idea, which might explain some lagging behind the latest milestone:
Since the milestones are sent randomly in less than 2% of all cases, it might take time for a node to send/receive a milestone. When running Nelson, certain time is lost to connect/disconnect peers, which maybe decreases a little the probability to receive a milestone.
Now, what if this IRI config value was changed when running Nelson to 0.05, for example, instead of 0.02? The Nelson nodes would reference the milestone more often and get in sync faster?
Is it worth trying?