plugeth/core
Martin Holst Swende beda6c41ad
core/txpool: move some validation to outside of mutex (#27006)
Currently, most of transaction validation while holding the txpool mutex: one exception being an early-on signature check. 

This PR changes that, so that we do all non-stateful checks before we entering the mutex area. This means they can be performed in parallel, and to enable that, certain fields have been made atomic bools and uint64.
2023-04-03 07:16:57 -04:00
..
asm all: change format 0x%x to %#x (#25221) 2022-07-04 11:03:32 +03:00
bloombits core/bloombits: use atomic type (#26993) 2023-03-28 03:05:29 -04:00
forkid params: schedule shanghai fork on mainnet (#26908) 2023-03-20 07:38:34 -04:00
rawdb core/rawdb: update freezertable read meter (#26946) 2023-03-23 03:34:40 -04:00
state core/state: use atomic.Bool (#26992) 2023-03-28 03:06:50 -04:00
txpool core/txpool: move some validation to outside of mutex (#27006) 2023-04-03 07:16:57 -04:00
types docs: update outdated DeriveSha docs comment (#26968) 2023-03-28 08:59:37 -04:00
vm core/vm: use atomic.Bool (#26951) 2023-03-27 09:40:20 -04:00
.gitignore Renamed chain => core 2014-12-04 10:28:02 +01:00
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 core: use atomic type (#27011) 2023-03-30 06:53:32 -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 core: use atomic type (#27011) 2023-03-30 06:53:32 -04: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: use atomic type (#27011) 2023-03-30 06:53:32 -04: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: use atomic type (#27011) 2023-03-30 06:53:32 -04:00