-
Notifications
You must be signed in to change notification settings - Fork 780
Closed
Labels
P:storage-optimizationPriority: Give operators greater control over storage and storage optimizationPriority: Give operators greater control over storage and storage optimizationP:tech-debtPriority: Technical debt that needs to be paid off to enable us to move faster, reliablyPriority: Technical debt that needs to be paid off to enable us to move faster, reliablybacklogA prioritized task in the team's backlogA prioritized task in the team's backlog
Description
Context
Based on the findings in #1286, it might be possible to remove the logic that keeps the entire genesis file in memory during node operation. Or at least, load the genesis information on demand only when needed and free it up from memory when not needed. We need to ensure this is not a breaking change and that the current logic that needs to validate/use the genesis information doesn't change any behavior or normal operation. This should be a seamless change that would not require any operational changes. If implemented, it would also be beneficial to provide benchmark reports on the a few metrics before and after this change to demonstrate that are advantages such as less memory footprint during node operation.
Proposal
See discussion below.
ToDo
-
Environmentstores either a pointer to aGenesisDocor the genesis' chunks, but not both. #4234 -
Nodedoes not keep a pointer to aGenesisDocafter initialization. #4248 - Benchmark the difference in a
Nodememory usage between before and after the changes.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
P:storage-optimizationPriority: Give operators greater control over storage and storage optimizationPriority: Give operators greater control over storage and storage optimizationP:tech-debtPriority: Technical debt that needs to be paid off to enable us to move faster, reliablyPriority: Technical debt that needs to be paid off to enable us to move faster, reliablybacklogA prioritized task in the team's backlogA prioritized task in the team's backlog