go-ethereum/core/rawdb
Martin Holst Swende 681618275c
core: speed up header import (#21967)
This PR implements the following modifications

- Don't shortcut check if block is present, thus avoid disk lookup
- Don't check hash ancestry in early-check (it's still done in parallel checker)
- Don't check time.Now for every single header

Charts and background info can be found here: https://github.com/holiman/headerimport/blob/main/README.md
With these changes, writing 1M headers goes down to from 80s to 62s.
2021-01-26 12:17:11 +01:00
..
accessors_chain_test.go core: persist bad blocks (#21827) 2021-01-10 12:54:15 +01:00
accessors_chain.go core: persist bad blocks (#21827) 2021-01-10 12:54:15 +01:00
accessors_indexes_test.go
accessors_indexes.go
accessors_metadata.go
accessors_snapshot.go core/rawdb, eth/protocols : Method name typo fix (#22026) 2020-12-27 22:38:16 +01:00
accessors_state.go
chain_iterator_test.go
chain_iterator.go
database.go core: persist bad blocks (#21827) 2021-01-10 12:54:15 +01:00
freezer_table_test.go
freezer_table.go core: speed up header import (#21967) 2021-01-26 12:17:11 +01:00
freezer.go
schema.go core: persist bad blocks (#21827) 2021-01-10 12:54:15 +01:00
table_test.go
table.go