blockchain: Move diff retarget log to connect. #2765
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This is rebased on #2761.The method that calculates the next required difficulty currently logs difficulty retargets which means it has side effects when it really should free from them given its purpose.
This can be evidenced by the fact the logging is actually slightly incorrect in a couple of ways due to those side effects. Namely, it can potentially log when checking block templates when it shouldn't and it is also currently logging when the headers are connected as opposed to when the blocks themselves are actually connected which was the original intention prior to the new headers-first logic.
Thus, this moves the debug logging for difficulty retargets from the required difficulty calculation function to the block connection function and also takes the opportunity to impose a new condition to only log when the difficulty actually changes as opposed to the current behavior of always logging on a retarget interval regardless.