1
0
Fork 0
forked from forks/go-ethereum
go-ethereum-modded-tocallarg/triedb/pathdb
rjl493456442 10519768a2
core, ethdb: introduce database sync function (#31703)
This pull request introduces a SyncKeyValue function to the
ethdb.KeyValueStore
interface, providing the ability to forcibly flush all previous writes
to disk.

This functionality is critical for go-ethereum, which internally uses
two independent
database engines: a key-value store (such as Pebble, LevelDB, or
memoryDB for
testing) and a flat-file–based freezer. To ensure write-order
consistency between
these engines, the key-value store must be explicitly synced before
writing to the
freezer and vice versa.

Fixes 
- https://github.com/ethereum/go-ethereum/issues/31405
- https://github.com/ethereum/go-ethereum/issues/29819
2025-05-08 19:10:26 +08:00
..
buffer.go core, ethdb: introduce database sync function (#31703) 2025-05-08 19:10:26 +08:00
database.go core, ethdb: introduce database sync function (#31703) 2025-05-08 19:10:26 +08:00
database_test.go triedb/pathdb: fix state revert on v2 history (#31060) 2025-01-22 14:06:36 +01:00
difflayer.go chore: fix various comments (#31082) 2025-01-28 16:56:23 +01:00
difflayer_test.go all: implement state history v2 (#30107) 2025-01-17 02:59:02 +01:00
disklayer.go triedb/pathdb: fix state revert on v2 history (#31060) 2025-01-22 14:06:36 +01:00
errors.go all: update license comments and AUTHORS (#31133) 2025-02-05 23:01:17 +01:00
execute.go all: update license comments and AUTHORS (#31133) 2025-02-05 23:01:17 +01:00
flush.go core, trie, triedb: minor changes from snapshot integration (#30599) 2024-10-18 17:06:31 +02:00
history.go all: drop x/exp direct dependency (#30558) 2025-02-27 15:53:52 +01:00
history_inspect.go all: update license comments and AUTHORS (#31133) 2025-02-05 23:01:17 +01:00
history_test.go all: update license comments and AUTHORS (#31133) 2025-02-05 23:01:17 +01:00
holdable_iterator.go trie/pathdb: state iterator (snapshot integration pt 4) (#30654) 2024-12-16 21:10:08 +08:00
holdable_iterator_test.go trie/pathdb: state iterator (snapshot integration pt 4) (#30654) 2024-12-16 21:10:08 +08:00
iterator.go trie/pathdb: state iterator (snapshot integration pt 4) (#30654) 2024-12-16 21:10:08 +08:00
iterator_binary.go trie/pathdb: state iterator (snapshot integration pt 4) (#30654) 2024-12-16 21:10:08 +08:00
iterator_fast.go all: use cmp.Compare (#30958) 2025-01-02 14:06:47 +01:00
iterator_test.go all: use fmt.Appendf instead of fmt.Sprintf where possible (#31301) 2025-03-25 14:53:02 +01:00
journal.go all: implement state history v2 (#30107) 2025-01-17 02:59:02 +01:00
layertree.go all: update license comments and AUTHORS (#31133) 2025-02-05 23:01:17 +01:00
metrics.go all: update license comments and AUTHORS (#31133) 2025-02-05 23:01:17 +01:00
nodes.go triedb/pathdb: improve perf by separating nodes map (#31306) 2025-04-02 15:06:54 +08:00
reader.go all: update license comments and AUTHORS (#31133) 2025-02-05 23:01:17 +01:00
states.go all: drop x/exp direct dependency (#30558) 2025-02-27 15:53:52 +01:00
states_test.go all: update license comments and AUTHORS (#31133) 2025-02-05 23:01:17 +01:00