go-ethereum/eth
Manav Darji d95c05b98a
Enable ancient block pruning (#1216)
* core/state: typo

Signed-off-by: Delweng <delweng@gmail.com>

* core/rawdb: backport from https://github.com/bnb-chain/bsc/pull/543

Signed-off-by: Delweng <delweng@gmail.com>

* eth,ethdb,node,core/state: backport from https://github.com/bnb-chain/bsc/pull/543

Signed-off-by: Delweng <delweng@gmail.com>

* eth,core: backport from https://github.com/bnb-chain/bsc/pull/543

Signed-off-by: Delweng <delweng@gmail.com>

* cmd: open db with freeze disabled

Signed-off-by: Delweng <delweng@gmail.com>

* cli: snapshot prune-block

Signed-off-by: Delweng <delweng@gmail.com>

* fix typo

Signed-off-by: Delweng <delweng@gmail.com>

* cli/snapshot: fix the issue of dup open db error

Signed-off-by: Delweng <delweng@gmail.com>

* cli/snapshot: resolve datadir and ancient before backup

Signed-off-by: Delweng <delweng@gmail.com>

* core: more prune-block log

Signed-off-by: Delweng <delweng@gmail.com>

* core: truncatetail missing f.offset

Signed-off-by: Delweng <delweng@gmail.com>

* core/rawdb: indextx adjust offset of pruned block

Signed-off-by: Delweng <delweng@gmail.com>

* core/rawdb: freezer batch should implement the offset commit, ref https://github.com/bnb-chain/bsc/pull/1005

Signed-off-by: Delweng <delweng@gmail.com>

* core: check of ancientdb, backport https://github.com/bnb-chain/bsc/pull/817

Signed-off-by: Delweng <delweng@gmail.com>

* core/state: read raw borReceipt to backup

Signed-off-by: Delweng <delweng@gmail.com>

* core/rawdb: bor receipt maybe in []Receipt or Receipt RLP format

Signed-off-by: Delweng <delweng@gmail.com>

* core/state: typo and error msg

Signed-off-by: Delweng <delweng@gmail.com>

* core/rawdb: offSet -> offset

Signed-off-by: Delweng <delweng@gmail.com>

* cli/snapshot: comment

Signed-off-by: Delweng <delweng@gmail.com>

* cli/snapshot: add prune-block doc

Signed-off-by: Delweng <delweng@gmail.com>

* docs: add prune-block document

Signed-off-by: Delweng <delweng@gmail.com>

* core/rawdb: print wrong bor-receipt length

Signed-off-by: Delweng <delweng@gmail.com>

* internal/cli: add snapshot prune block tests (referenced from bsc's PR)

* improve errors

* cmd, core, eth, internal: fix lint

* internal/cli: refactor snapshot prune block test

* fix linters in tests

* internal/cli: add inspect-ancient-db command, update docs

* pruner: use a generic function for simplification

* internal/cli: fixes for inspect-db command

* internal/cli: improve pruning tests

* core/rawdb: update end block calculation logic in inspect command

* core/rawdb: improve checks db initialisation

* core/rawdb: remove offset check

* update mocks for span, ethdb and add command in makefile

* docs/cli: update docs with inspect command

* go mod tidy

* refactor and resolve conflicts

* resolve more conflicts

* refactor

* explicitly read node for hash scheme

* add check for hash scheme, fix tests

* fix typo

* update docs and add warning

* raise error if pbss is enabled

* revert read raw bor receipt change

* consensus/bor: handle nil header case in get root hash

* address comments

* core/rawdb: check chain continuity by matching parent hash

* core/rawdb: account for pruned ancient blocks

* go mod tidy

* fix tests

* fix tests

---------

Signed-off-by: Delweng <delweng@gmail.com>
Co-authored-by: Delweng <delweng@gmail.com>
2024-05-09 11:19:34 +05:30
..
catalyst Merge upstream_merge branch to develop (#1229) 2024-04-29 12:21:11 +02:00
downloader Enable ancient block pruning (#1216) 2024-05-09 11:19:34 +05:30
ethconfig Merge upstream_merge branch to develop (#1229) 2024-04-29 12:21:11 +02:00
fetcher Merge upstream_merge branch to develop (#1229) 2024-04-29 12:21:11 +02:00
filters Enable ancient block pruning (#1216) 2024-05-09 11:19:34 +05:30
gasestimator Merge upstream_merge branch to develop (#1229) 2024-04-29 12:21:11 +02:00
gasprice merge geth v1.12.2 into develop 2023-08-18 14:05:34 +05:30
protocols Merge upstream_merge branch to develop (#1229) 2024-04-29 12:21:11 +02:00
tracers eth/tracers: avoid data race when tracing block with bor tx (#1214) 2024-05-03 11:50:10 +05:30
api.go eth: handle nil blocks and state when pending is not available (#1053) 2023-10-20 15:22:05 +05:30
api_admin.go eth: ignore genesis block on importChain (#27956) 2023-08-21 13:32:34 -04:00
api_backend.go Merge upstream_merge branch to develop (#1229) 2024-04-29 12:21:11 +02:00
api_debug.go Merge upstream_merge branch to develop (#1229) 2024-04-29 12:21:11 +02:00
api_debug_test.go Merge upstream_merge branch to develop (#1229) 2024-04-29 12:21:11 +02:00
api_miner.go eth, miner: fix enforcing the minimum miner tip (#28933) (#1209) 2024-04-08 10:47:47 +05:30
backend.go Enable ancient block pruning (#1216) 2024-05-09 11:19:34 +05:30
bloombits.go dev: fix: most of wsl lint issues 2023-06-15 15:48:26 +02:00
bor_api_backend.go fix: failure in milestones vote on hash 2024-03-28 17:51:13 +05:30
bor_checkpoint_verifier.go Chg: Changed the maximum automatic rewind length from 256 to 126 2024-01-30 13:11:23 +05:30
handler.go eth: explicitly commented the code were bor could get into snap-sync mode (#1243) 2024-05-09 08:42:55 +05:30
handler_bor.go eth, consensus/bor: handle 503 status code in heimdall client (#1023) 2023-10-05 15:53:40 +05:30
handler_bor_test.go fix lint 2023-09-23 16:26:23 +05:30
handler_eth.go Merge tag 'v1.13.5' of https://github.com/ethereum/go-ethereum into shivam/upstream-geth-1.13.5 2023-12-15 13:55:57 +05:30
handler_eth_test.go chore: fix some comments (#1203) 2024-04-10 11:19:50 +02:00
handler_snap.go dev: fix: most of wsl lint issues 2023-06-15 15:48:26 +02:00
handler_test.go Merge tag 'v1.13.5' of https://github.com/ethereum/go-ethereum into shivam/upstream-geth-1.13.5 2023-12-15 13:55:57 +05:30
peer.go dev: fix: solve more lint issues 2023-06-15 14:54:08 +02:00
peerset.go Merge tag 'v1.13.5' of https://github.com/ethereum/go-ethereum into shivam/upstream-geth-1.13.5 2023-12-15 13:55:57 +05:30
state_accessor.go Enable ancient block pruning (#1216) 2024-05-09 11:19:34 +05:30
sync.go eth: explicitly commented the code were bor could get into snap-sync mode (#1243) 2024-05-09 08:42:55 +05:30
sync_test.go fix : testcases 2024-01-10 17:12:37 +05:30