go-ethereum/core
rjl493456442 48d1bf0678
consensus: improve consensus engine definition (#26871)
Makes clear the distinction between Finalize and FinalizedAndAssemble:

- In Finalize function, a series of state operations are applied according to consensus rules. The statedb is mutated and the root hash can be checked and compared afterwards.

This function should be used in block processing(receive afrom network and apply it locally) but not block generation.

- In FinalizeAndAssemble function, after applying state mutations, the block is also to be assembled with the latest
  state root computed, updating the header. 

 This function should be used in block generation only.
2023-03-16 15:34:25 -04:00
..
asm all: change format 0x%x to %#x (#25221) 2022-07-04 11:03:32 +03:00
bloombits all: remove deprecated uses of math.rand (#26710) 2023-02-16 14:36:58 -05:00
forkid core/forkid: fix issue in validation test (#26544) 2023-03-09 06:37:44 -05:00
rawdb core/rawdb: find smallest block stored in key-value store when chain gapped (#26719) 2023-03-08 02:39:13 -05:00
state core: show db error-info in case of mismatched hash root (#26870) 2023-03-16 03:12:34 -04:00
txpool core/txpool: use priceList.Put instead of heap.Push (#26863) 2023-03-13 04:45:25 -04:00
types core, core/types: plain Message struct (#25977) 2023-03-09 14:19:12 +01:00
vm core: show db error-info in case of mismatched hash root (#26870) 2023-03-16 03:12:34 -04:00
.gitignore
bench_test.go all: use unified emptyRootHash and emptyCodeHash (#26718) 2023-02-21 06:12:27 -05:00
block_validator_test.go tests: update tests (#26314) 2022-12-20 09:56:52 -05:00
block_validator.go consensus: improve consensus engine definition (#26871) 2023-03-16 15:34:25 -04:00
blockchain_insert.go core: fix log order in "Imported new chain segment" (#25768) 2022-09-15 13:18:23 +02:00
blockchain_reader.go all: change chain head markers from block to header (#26777) 2023-03-02 08:29:15 +02:00
blockchain_repair_test.go all: change chain head markers from block to header (#26777) 2023-03-02 08:29:15 +02:00
blockchain_sethead_test.go all: change chain head markers from block to header (#26777) 2023-03-02 08:29:15 +02:00
blockchain_snapshot_test.go all: change chain head markers from block to header (#26777) 2023-03-02 08:29:15 +02:00
blockchain_test.go all: change chain head markers from block to header (#26777) 2023-03-02 08:29:15 +02:00
blockchain.go consensus: improve consensus engine definition (#26871) 2023-03-16 15:34:25 -04:00
blocks.go core: typos and comments improve 2017-05-25 17:14:33 +03:00
bloom_indexer.go core: preallocate batch size in bloomIndexer (#25289) 2022-08-03 17:02:09 +02:00
chain_indexer_test.go core: fix potential race in chainIndexerTest (#22346) 2021-03-19 13:32:57 +01:00
chain_indexer.go all: make logs a bit easier on the eye to digest (#22665) 2021-04-15 20:35:00 +03:00
chain_makers_test.go core: fix a merge fault (#26802) 2023-03-03 12:11:39 +02:00
chain_makers.go core: add Timestamp method in BlockGen (#26844) 2023-03-10 14:03:27 +01:00
dao_test.go all: change chain head markers from block to header (#26777) 2023-03-02 08:29:15 +02:00
error.go core/vm: implement EIP-3860: Limit and meter initcode (#23847) 2023-01-11 04:05:47 -05:00
events.go eth/filters: remove use of event.TypeMux for pending logs (#20312) 2019-12-10 12:39:14 +01:00
evm.go core, core/types: plain Message struct (#25977) 2023-03-09 14:19:12 +01:00
forkchoice.go core: clarify code in forkchoice (#26257) 2022-11-28 11:07:25 +01:00
gaspool.go core, miner: revert block gas counter in case of invalid transaction (#26799) 2023-03-07 05:23:52 -05:00
gen_genesis_account.go tests: update for London (#22976) 2021-06-07 14:37:56 +02:00
gen_genesis.go core: change baseFee into baseFeePerGas in genesis json 2021-06-14 14:04:44 +02:00
genesis_alloc.go all: remove support for Ropsten (#26644) 2023-02-09 10:03:00 +02:00
genesis_test.go all: remove support for Ropsten (#26644) 2023-02-09 10:03:00 +02:00
genesis.go all: use unified emptyRootHash and emptyCodeHash (#26718) 2023-02-21 06:12:27 -05:00
headerchain_test.go core, eth, les, tests, trie: abstract node scheme (#25532) 2022-11-28 14:31:28 +01:00
headerchain.go core, eth: merge snap-sync chain download progress logs (#26676) 2023-02-21 12:17:34 +02:00
mkalloc.go build: upgrade to go 1.19 (#25726) 2022-09-10 13:25:40 +02:00
rlp_test.go all: cleanup tests (#25641) 2022-09-07 20:21:59 +02:00
sender_cacher.go all: refactor txpool into it's own package in prep for 4844 2022-10-24 16:35:53 +03:00
state_prefetcher.go core, core/types: plain Message struct (#25977) 2023-03-09 14:19:12 +01:00
state_processor_test.go all: use unified emptyRootHash and emptyCodeHash (#26718) 2023-02-21 06:12:27 -05:00
state_processor.go core, core/types: plain Message struct (#25977) 2023-03-09 14:19:12 +01:00
state_transition.go core, core/types: plain Message struct (#25977) 2023-03-09 14:19:12 +01:00
types.go core: prefetch next block state concurrently 2019-04-01 11:06:15 +03:00