erigon-pulse/core/state
gary rong a9e6250e72 all: bloom-filter based pruning mechanism (#21724)
* cmd, core, tests: initial state pruner

core: fix db inspector

cmd/geth: add verify-state

cmd/geth: add verification tool

core/rawdb: implement flatdb

cmd, core: fix rebase

core/state: use new contract code layout

core/state/pruner: avoid deleting genesis state

cmd/geth: add helper function

core, cmd: fix extract genesis

core: minor fixes

contracts: remove useless

core/state/snapshot: plugin stacktrie

core: polish

core/state/snapshot: iterate storage concurrently

core/state/snapshot: fix iteration

core: add comments

core/state/snapshot: polish code

core/state: polish

core/state/snapshot: rebase

core/rawdb: add comments

core/rawdb: fix tests

core/rawdb: improve tests

core/state/snapshot: fix concurrent iteration

core/state: run pruning during the recovery

core, trie: implement martin's idea

core, eth: delete flatdb and polish pruner

trie: fix import

core/state/pruner: add log

core/state/pruner: fix issues

core/state/pruner: don't read back

core/state/pruner: fix contract code write

core/state/pruner: check root node presence

cmd, core: polish log

core/state: use HEAD-127 as the target

core/state/snapshot: improve tests

cmd/geth: fix verification tool

cmd/geth: use HEAD as the verification default target

all: replace the bloomfilter with martin's fork

cmd, core: polish code

core, cmd: forcibly delete state root

core/state/pruner: add hash64

core/state/pruner: fix blacklist

core/state: remove blacklist

cmd, core: delete trie clean cache before pruning

cmd, core: fix lint

cmd, core: fix rebase

core/state: fix the special case for clique networks

core/state/snapshot: remove useless code

core/state/pruner: capping the snapshot after pruning

cmd, core, eth: fixes

core/rawdb: update db inspector

cmd/geth: polish code

core/state/pruner: fsync bloom filter

cmd, core: print warning log

core/state/pruner: adjust the parameters for bloom filter

cmd, core: create the bloom filter by size

core: polish

core/state/pruner: sanitize invalid bloomfilter size

cmd: address comments

cmd/geth: address comments

cmd/geth: address comment

core/state/pruner: address comments

core/state/pruner: rename homedir to datadir

cmd, core: address comments

core/state/pruner: address comment

core/state: address comments

core, cmd, tests: address comments

core: address comments

core/state/pruner: release the iterator after each commit

core/state/pruner: improve pruner

cmd, core: adjust bloom paramters

core/state/pruner: fix lint

core/state/pruner: fix tests

core: fix rebase

core/state/pruner: remove atomic rename

core/state/pruner: address comments

all: run go mod tidy

core/state/pruner: avoid false-positive for the middle state roots

core/state/pruner: add checks for middle roots

cmd/geth: replace crit with error

* core/state/pruner: fix lint

* core: drop legacy bloom filter

* core/state/snapshot: improve pruner

* core/state/snapshot: polish concurrent logs to report ETA vs. hashes

* core/state/pruner: add progress report for pruning and compaction too

* core: fix snapshot test API

* core/state: fix some pruning logs

* core/state/pruner: support recovering from bloom flush fail

Co-authored-by: Péter Szilágyi <peterke@gmail.com>
# Conflicts:
#	cmd/geth/main.go
#	cmd/geth/usage.go
#	core/blockchain.go
#	core/blockchain_snapshot_test.go
#	core/genesis.go
#	core/rawdb/database.go
#	core/rawdb/schema.go
#	core/state/snapshot/conversion.go
#	core/state/snapshot/snapshot.go
#	core/state/snapshot/snapshot_test.go
#	eth/backend.go
#	go.mod
#	go.sum
#	tests/block_test_util.go
#	tests/state_test_util.go
#	trie/stacktrie.go
2021-03-10 10:58:22 +01:00
..
contracts Bad unwind of recreation of CREATE2 contract - unit test and potentia… (#1412) 2020-12-16 17:16:37 +00:00
pruner all: bloom-filter based pruning mechanism (#21724) 2021-03-10 10:58:22 +01:00
access_list.go post-rebase. fix imports 2020-12-03 17:37:38 +01:00
cached_reader.go New Trie db layout - store trie structure info and multiple hashes per record (#1500) 2021-02-21 18:41:59 +00:00
cached_writer.go State cache switching writes to reads during commit (#1368) 2020-12-08 09:44:29 +00:00
change_set_writer.go Remove hashed changesets (#1464) 2021-02-04 12:59:04 +03:00
database_test.go Revert "Extract validating interface (#1120)" (#1543) 2021-03-05 20:34:23 +00:00
database_writer.go Add "execute blocks" stage to the staged sync. (#486) 2020-04-26 17:02:38 +01:00
database.go blocks exec unwind - to support graceful shutdown (#1494) 2021-02-23 17:14:32 +00:00
db_state_reader.go New Trie db layout - store trie structure info and multiple hashes per record (#1500) 2021-02-21 18:41:59 +00:00
db_state_writer.go New Trie db layout - store trie structure info and multiple hashes per record (#1500) 2021-02-21 18:41:59 +00:00
dump.go Remove changeset-based decorators from WalkAsOf (#1356) 2020-11-18 14:58:52 +00:00
helper.go Don't store RLPs in valueNodes (except tests). 2019-11-13 20:08:20 +01:00
history_test.go Remove nested transactions (#1483) 2021-02-10 17:04:22 +00:00
history.go ChangeSet: remove Walker::Walk (#1476) 2021-02-09 17:26:00 +07:00
intra_block_state_test.go post-rebase. fix imports 2020-12-03 17:37:38 +01:00
intra_block_state.go State cache switching writes to reads during commit (#1368) 2020-12-08 09:44:29 +00:00
journal.go post-rebase. fix imports 2020-12-03 17:37:38 +01:00
plain_readonly.go WIP trace_call implementation (#1399) 2020-12-14 11:27:52 +00:00
plain_state_reader.go WIP trace_call implementation (#1399) 2020-12-14 11:27:52 +00:00
plain_state_writer.go Bad unwind of recreation of CREATE2 contract - unit test and potentia… (#1412) 2020-12-16 17:16:37 +00:00
state_object_test.go build: use golangci-lint (#20295) 2019-12-03 13:38:59 +01:00
state_object.go State cache switching writes to reads during commit (#1368) 2020-12-08 09:44:29 +00:00
state_test.go Remove nested transactions (#1483) 2021-02-10 17:04:22 +00:00
stateless.go State cache switching writes to reads during commit (#1368) 2020-12-08 09:44:29 +00:00
trie_prefetcher.go core/state: convert prefetcher to concurrent per-trie loader 2021-03-09 12:30:09 +01:00