Skip to content

Commit

Permalink
core/rawdb: more accurate description of freezer in docs (#30393)
Browse files Browse the repository at this point in the history
fixes #29793
  • Loading branch information
rjl493456442 authored Sep 13, 2024
1 parent 7c6b3f9 commit c0b5d42
Showing 1 changed file with 5 additions and 7 deletions.
12 changes: 5 additions & 7 deletions core/rawdb/freezer.go
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down Expand Up @@ -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()
Expand Down

0 comments on commit c0b5d42

Please sign in to comment.