go-ethereum/core/rawdb
rjl493456442 7364e63ef9
core/rawdb: change the mechanism to schedule freezer sync (#32135)
This pull request slightly improves the freezer fsync mechanism by scheduling 
the Sync operation based on the number of uncommitted items and original
time interval.

Originally, freezer.Sync was triggered every 30 seconds, which worked well during
active chain synchronization. However, once the initial state sync is complete, 
the fixed interval causes Sync to be scheduled too frequently.

To address this, the scheduling logic has been improved to consider both the time 
interval and the number of uncommitted items. This additional condition helps 
avoid unnecessary Sync operations when the chain is idle.
2025-07-15 13:50:52 +08:00
..
ancienttest core/rawdb: integrate eradb backend for RPC (#31604) 2025-06-03 10:47:38 +02:00
eradb core/rawdb: integrate eradb backend for RPC (#31604) 2025-06-03 10:47:38 +02:00
testdata core/rawdb: avoid unnecessary receipt processing for log filtering (#23147) 2021-09-28 12:54:49 +02:00
accessors_chain.go ethapi: reduce some of the wasted effort in GetTransactionReceipt (#32021) 2025-07-01 15:18:49 +08:00
accessors_chain_test.go ethapi: reduce some of the wasted effort in GetTransactionReceipt (#32021) 2025-07-01 15:18:49 +08:00
accessors_history.go core/rawdb, triedb/pathdb: implement history indexer (#31156) 2025-06-24 14:36:12 +02:00
accessors_indexes.go core/filtermaps: define APIs for map, epoch calculation (#31659) 2025-07-01 16:31:09 +02:00
accessors_indexes_test.go ethapi: reduce some of the wasted effort in GetTransactionReceipt (#32021) 2025-07-01 15:18:49 +08:00
accessors_metadata.go Revert "core/rawdb: remove unused transition status state accessors" (#30449) 2024-09-18 11:53:50 +03:00
accessors_snapshot.go all: fix various typos (#29542) 2024-04-16 15:44:00 +03:00
accessors_state.go triedb/pathdb: introduce file-based state journal (#32060) 2025-07-15 11:45:20 +08:00
accessors_sync.go core, accounts, eth, trie: handle genesis state missing (#28171) 2023-09-28 10:00:53 +03:00
accessors_trie.go all: create global hasher pool (#31769) 2025-05-09 13:52:40 +08:00
ancient_scheme.go core/rawdb: allow for truncation in the freezer (#31362) 2025-03-17 16:01:37 +01:00
ancient_utils.go core/rawdb: allow for truncation in the freezer (#31362) 2025-03-17 16:01:37 +01:00
chain_freezer.go core/rawdb: integrate eradb backend for RPC (#31604) 2025-06-03 10:47:38 +02:00
chain_iterator.go ethapi: reduce some of the wasted effort in GetTransactionReceipt (#32021) 2025-07-01 15:18:49 +08:00
chain_iterator_test.go cmd/geth: add prune history command (#31384) 2025-03-21 13:12:56 +01:00
database.go core/rawdb, triedb/pathdb: implement history indexer (#31156) 2025-06-24 14:36:12 +02:00
freezer.go core/rawdb: integrate eradb backend for RPC (#31604) 2025-06-03 10:47:38 +02:00
freezer_batch.go core/rawdb: change the mechanism to schedule freezer sync (#32135) 2025-07-15 13:50:52 +08:00
freezer_memory.go core/rawdb: integrate eradb backend for RPC (#31604) 2025-06-03 10:47:38 +02:00
freezer_memory_test.go core/rawdb: allow for truncation in the freezer (#31362) 2025-03-17 16:01:37 +01:00
freezer_meta.go core/rawdb: introduce flush offset in freezer (#30392) 2025-02-04 11:45:45 +01:00
freezer_meta_test.go core/rawdb: introduce flush offset in freezer (#30392) 2025-02-04 11:45:45 +01:00
freezer_resettable.go core/rawdb: integrate eradb backend for RPC (#31604) 2025-06-03 10:47:38 +02:00
freezer_resettable_test.go core/rawdb: implement in-memory freezer (#29135) 2024-04-30 11:33:22 +02:00
freezer_table.go core/rawdb: change the mechanism to schedule freezer sync (#32135) 2025-07-15 13:50:52 +08:00
freezer_table_test.go core/rawdb: allow for truncation in the freezer (#31362) 2025-03-17 16:01:37 +01:00
freezer_test.go core/rawdb: integrate eradb backend for RPC (#31604) 2025-06-03 10:47:38 +02:00
freezer_utils.go core/rawdb: fsync the index file after each freezer write (#28483) 2023-11-10 12:56:39 +02:00
freezer_utils_test.go all: more linters (#24783) 2022-06-13 16:24:45 +02:00
key_length_iterator.go core/rawdb: add specified key length iterator (#24535) 2022-03-15 10:28:26 +02:00
key_length_iterator_test.go core/rawdb: add specified key length iterator (#24535) 2022-03-15 10:28:26 +02:00
schema.go core/rawdb, triedb/pathdb: fix two inaccurate comments (#32130) 2025-07-02 08:46:03 +08:00
table.go ethdb: Implement DeleteRange in batch (#31947) 2025-06-20 19:40:41 +08:00
table_test.go ethdb: Implement DeleteRange in batch (#31947) 2025-06-20 19:40:41 +08:00