• rjl493456442's avatar
    core: rework tx indexer (#25723) · 052c6349
    rjl493456442 authored
    This PR reworks tx indexer a bit. Compared to the original version, one scenario is no longer handled - upgrading  from legacy geth without indexer support. 
    
    The tx indexer was introduced in 2020 and have been present through hardforks, so it can be assumed that all Geth nodes have tx indexer already. So we can simplify the tx indexer logic a bit:
    
    -    If the tail flag is not present, it means node is just initialized may or may not with an ancient store attached. In this case all blocks are regarded as unindexed
    -   If the tail flag is present, it means blocks below tail are unindexed, blocks above tail are indexed
    
    This change also address some weird cornercases that could make the indexer not work after a crash.
    052c6349
Name
Last commit
Last update
..
asm Loading commit data...
beacon Loading commit data...
bloombits Loading commit data...
forkid Loading commit data...
rawdb Loading commit data...
state Loading commit data...
types Loading commit data...
vm Loading commit data...
.gitignore Loading commit data...
bench_test.go Loading commit data...
block_validator.go Loading commit data...
block_validator_test.go Loading commit data...
blockchain.go Loading commit data...
blockchain_insert.go Loading commit data...
blockchain_reader.go Loading commit data...
blockchain_repair_test.go Loading commit data...
blockchain_sethead_test.go Loading commit data...
blockchain_snapshot_test.go Loading commit data...
blockchain_test.go Loading commit data...
blocks.go Loading commit data...
bloom_indexer.go Loading commit data...
chain_indexer.go Loading commit data...
chain_indexer_test.go Loading commit data...
chain_makers.go Loading commit data...
chain_makers_test.go Loading commit data...
dao_test.go Loading commit data...
error.go Loading commit data...
events.go Loading commit data...
evm.go Loading commit data...
forkchoice.go Loading commit data...
gaspool.go Loading commit data...
gen_genesis.go Loading commit data...
gen_genesis_account.go Loading commit data...
genesis.go Loading commit data...
genesis_alloc.go Loading commit data...
genesis_test.go Loading commit data...
headerchain.go Loading commit data...
headerchain_test.go Loading commit data...
mkalloc.go Loading commit data...
rlp_test.go Loading commit data...
state_prefetcher.go Loading commit data...
state_processor.go Loading commit data...
state_processor_test.go Loading commit data...
state_transition.go Loading commit data...
tx_cacher.go Loading commit data...
tx_journal.go Loading commit data...
tx_list.go Loading commit data...
tx_list_test.go Loading commit data...
tx_noncer.go Loading commit data...
tx_pool.go Loading commit data...
tx_pool_test.go Loading commit data...
types.go Loading commit data...