Merges the new milestone solidification logic. This includes the addition of the MilestoneStage in the TransactionProcessingPipeline for handling transactions immediately on receiving them, as well as the consolidation of the LatestMilestoneTracker, MilestoneSolidifier and LatestSolidMilestoneTracker into one efficient MilesotneSolidifier class. These changes streamline the milestone solidification process and no longer requires continuous pulling of transactions from the db, reducing the memory consumption and general CPU usage of the node.
Type of change
Enhancement (a non-breaking change which adds functionality)
How the change has been tested
These changes have been put through every test at our disposal:
Synchronisation tests
Internal network testing
Regression testing
Jmeter bench-marking
Spam load testing
Change checklist
[x] My code follows the contribution guidelines for this project
[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[x] I have made corresponding changes to the documentation
[x] I have added tests that prove my fix is effective or that my feature works
[x] New and existing unit tests pass locally with my changes
Description of change
Merges the new milestone solidification logic. This includes the addition of the
MilestoneStage
in theTransactionProcessingPipeline
for handling transactions immediately on receiving them, as well as the consolidation of theLatestMilestoneTracker
,MilestoneSolidifier
andLatestSolidMilestoneTracker
into one efficientMilesotneSolidifier
class. These changes streamline the milestone solidification process and no longer requires continuous pulling of transactions from the db, reducing the memory consumption and general CPU usage of the node.Type of change
How the change has been tested
These changes have been put through every test at our disposal:
Change checklist