ethstorage / es-node

Golang implementation of the EthStorage node.
Other
1.15k stars 77 forks source link

Need a disk-backed pool for non-finalized BLOBs #298

Closed qzhodl closed 2 months ago

qzhodl commented 3 months ago

Rationale

Why should this feature exist?

Currently, the downloader uses a memory cache to keep non-finalized BLOBs and only writes them to disk after they are finalized. While this approach may be sufficient for L1, where the finalization time is usually around 12 minutes, it might not be adequate for L2. On L2, the finalization time is mostly around 12 hours, which means the memory may not be enough. Therefore, we might need a disk-backed pool for L2 to handle the longer finalization times.

What are the use-cases?

L2 case.

Implementation

Do you have ideas regarding the implementation of this feature?

Geth implements a disk-backed transaction pool ( billy and limbo )

syntrust commented 2 months ago

Done by https://github.com/ethstorage/es-node/pull/306