hiero-ledger / hiero-ledger/hiero-consensus-node

Simplify State API class/interface hierarchy after all in-memory implementations are dropped

Open
#21,077 0 comments 0 reactions 0 assignees View on GitHub
Platform Platform Data Structures Tech Debt Reduced
Dominant language
Java
Stars
406
Forks
226
Avg merge
3d 4h
Merged PRs (30d)
210

Description

State API / impl modules provide three state types (singleton, queue, and K/V) with several implementations for each (on disk, in memory). Now all in-memory implementations are no longer used, everything is stored on disk (in a virtual mega map). It opens possibility to clean up the modules, in particular get rid of a few classes, merge some classes (e.g. merge `WritableKVStateBase` and `OnDiskWritableKVState`), and maybe even remove some interfaces.

Contributor guide

Open the contributing guide

Research direction

Start by mapping the State API and impl modules, then trace the singleton, queue, and K/V types and their on-disk implementations. Identify which classes and interfaces remain used after the in-memory implementations were dropped; done means the hierarchy is simplified without retaining obsolete abstractions.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
backend
Issue type
Refactor
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.