Commit graph

4 commits

Author SHA1 Message Date
Andrew Davis
d9939eb995
cmd/utils, core/types: optimize erae history import with batched insertion and raw RLP receipt conversion
Rework ImportHistory to batch up to 2500 consecutive blocks per
InsertReceiptChain call, reducing processing overhead.

Replace full receipt deserialization with raw RLP-level conversion via
GetRawReceiptsByNumber, avoiding allocation of Receipt/Log/Bloom structs
and eliminating the decode-reencode round-trip for both era1 and erae
formats.

Centralize consensus receipt conversion into types.ConvertConsensusReceiptsToStorage
(shared by eradb runtime path and import command), and add a new slim
receipt converter for the erae format that strips the tx-type field and
validates tx/receipt count consistency.

Fix resource management by explicitly closing file handles and era objects
at each error return instead of relying on defer-in-closure patterns.
2026-02-26 12:10:45 +10:00
shazam8253
c9b7ae422c
internal/era: New EraE implementation (#32157)
Some checks are pending
/ Linux Build (push) Waiting to run
/ Linux Build (arm) (push) Waiting to run
/ Keeper Build (push) Waiting to run
/ Windows Build (push) Waiting to run
/ Docker Image (push) Waiting to run
Here is a draft for the New EraE implementation. The code follows along
with the spec listed at https://hackmd.io/pIZlxnitSciV5wUgW6W20w.

---------

Co-authored-by: shantichanal <158101918+shantichanal@users.noreply.github.com>
Co-authored-by: lightclient <lightclient@protonmail.com>
Co-authored-by: MariusVanDerWijden <m.vanderwijden@live.de>
Co-authored-by: Sina Mahmoodi <itz.s1na@gmail.com>
2026-02-09 08:30:19 -07:00
Lucia
7368b34a4b
core/rawdb: capture open file error and fix resource leak (#33147)
Some checks are pending
/ Linux Build (push) Waiting to run
/ Linux Build (arm) (push) Waiting to run
/ Keeper Build (push) Waiting to run
/ Windows Build (push) Waiting to run
/ Docker Image (push) Waiting to run
2025-11-11 16:01:37 +08:00
Sina M
a7d9b52eaf
core/rawdb: integrate eradb backend for RPC (#31604)
This implements a backing store for chain history based on era1 files.
The new store is integrated with the freezer. Queries for blocks and receipts
below the current freezer tail are handled by the era store.

---------

Co-authored-by: Gary Rong <garyrong0905@gmail.com>
Co-authored-by: Felix Lange <fjl@twurst.com>
Co-authored-by: lightclient <lightclient@protonmail.com>
2025-06-03 10:47:38 +02:00