From c0b5d428a9a88ddd82605983bbd1b612dc61672d Mon Sep 17 00:00:00 2001 From: rjl493456442 Date: Fri, 13 Sep 2024 17:17:40 +0800 Subject: [PATCH] core/rawdb: more accurate description of freezer in docs (#30393) fixes https://github.com/ethereum/go-ethereum/issues/29793 --- core/rawdb/freezer.go | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/core/rawdb/freezer.go b/core/rawdb/freezer.go index 6c050ee625e5..1b8df958d1f7 100644 --- a/core/rawdb/freezer.go +++ b/core/rawdb/freezer.go @@ -52,13 +52,11 @@ var ( // freezerTableSize defines the maximum size of freezer data files. const freezerTableSize = 2 * 1000 * 1000 * 1000 -// Freezer is a memory mapped append-only database to store immutable ordered -// data into flat files: +// Freezer is an append-only database to store immutable ordered data into +// flat files: // -// - The append-only nature ensures that disk writes are minimized. -// - The memory mapping ensures we can max out system memory for caching without -// reserving it for go-ethereum. This would also reduce the memory requirements -// of Geth, and thus also GC overhead. +// - The append-only nature ensures that disk writes are minimized. +// - The in-order data ensures that disk reads are always optimized. type Freezer struct { frozen atomic.Uint64 // Number of items already frozen tail atomic.Uint64 // Number of the first stored item in the freezer @@ -152,7 +150,7 @@ func NewFreezer(datadir string, namespace string, readonly bool, maxTableSize ui return freezer, nil } -// Close terminates the chain freezer, unmapping all the data files. +// Close terminates the chain freezer, closing all the data files. func (f *Freezer) Close() error { f.writeLock.Lock() defer f.writeLock.Unlock()