Skip to content

Node does not keep a pointer to a GenesisDoc after initialization. #4248

@alesforz

Description

@alesforz

Work to be done as part of #1290.

Context

#1286 answers the question "Does a Node need an in-memory copy of the genesis for its entire lifecycle?" with a No.

After initialization, a Node only requires the GenesisTime field from the genesis. Once a Node has completed its startup, which includes initializing an Environment struct serving the RPC APIs is initialized, it no longer needs the genesis at all.

ToDo

  • Change the implementation of Node so that it no longer keeps a pointer to the GenesisDoc after startup.
  • Node stores the GenesisTime as a field to use it after startup.

Metadata

Metadata

Assignees

Labels

P: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, reliablybacklogA prioritized task in the team's backlog

Type

No type

Projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions