Official Go implementation of the Ethereum protocol
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Sina Mahmoodi
2def62b99b
eth/filters: avoid block body retrieval when no matching logs ( #25199 )
...
Logs stored on disk have minimal information. Contextual information such as block
number, index of log in block, index of transaction in block are filled in upon request.
We can fill in all these fields only having the block header and list of receipts.
But determining the transaction hash of a log requires the block body.
The goal of this PR is postponing this retrieval until we are sure we the transaction hash.
It happens often that the header bloom filter signals there might be matches in a block,
but after actually checking them reveals the logs do not match. We want to avoid fetching
the body in this case.
Note that this changes the semantics of Backend.GetLogs. Downstream callers of
GetLogs now assume log context fields have not been derived, and need to call
DeriveFields on the logs if necessary.
2 years ago
..
asm
all: change format `0x%x` to `%#x` ( #25221 )
2 years ago
bloombits
all: fix spelling mistakes ( #25961 )
2 years ago
forkid
params: schedule shanghai fork on sepolia ( #26662 )
2 years ago
rawdb
eth/filters: avoid block body retrieval when no matching logs ( #25199 )
2 years ago
state
core/state, trie: remove unused error-return from trie Commit operation ( #26641 )
2 years ago
txpool
common/prque: generic priority queue ( #26290 )
2 years ago
types
all: implement withdrawals (EIP-4895) ( #26484 )
2 years ago
vm
core/vm: set tracer-observable `value` of a delegatecall to match parent `value` ( #26632 )
2 years ago
.gitignore
Renamed `chain` => `core`
10 years ago
bench_test.go
core/vm: implement EIP-3860: Limit and meter initcode ( #23847 )
2 years ago
block_validator.go
tests: update ( #26548 )
2 years ago
block_validator_test.go
tests: update tests ( #26314 )
2 years ago
blockchain.go
common/prque: generic priority queue ( #26290 )
2 years ago
blockchain_insert.go
core: fix log order in "Imported new chain segment" ( #25768 )
2 years ago
blockchain_reader.go
core, eth, les, tests, trie: abstract node scheme ( #25532 )
2 years ago
blockchain_repair_test.go
ethdb: pebble backend (64bit platforms only) ( #26517 )
2 years ago
blockchain_sethead_test.go
ethdb: pebble backend (64bit platforms only) ( #26517 )
2 years ago
blockchain_snapshot_test.go
ethdb: pebble backend (64bit platforms only) ( #26517 )
2 years ago
blockchain_test.go
all: remove support for Ropsten ( #26644 )
2 years ago
blocks.go
core: typos and comments improve
8 years ago
bloom_indexer.go
core: preallocate batch size in bloomIndexer ( #25289 )
2 years ago
chain_indexer.go
all: make logs a bit easier on the eye to digest ( #22665 )
4 years ago
chain_indexer_test.go
core: fix potential race in chainIndexerTest ( #22346 )
4 years ago
chain_makers.go
all: remove database commit callback, rework noderesolver ( #26637 )
2 years ago
chain_makers_test.go
all: move genesis initialization to blockchain ( #25523 )
2 years ago
dao_test.go
all: remove database commit callback, rework noderesolver ( #26637 )
2 years ago
error.go
core/vm: implement EIP-3860: Limit and meter initcode ( #23847 )
2 years ago
events.go
eth/filters: remove use of event.TypeMux for pending logs ( #20312 )
5 years ago
evm.go
all: make timestamp-based fork checks based on uint64 ( #26474 )
2 years ago
forkchoice.go
core: clarify code in forkchoice ( #26257 )
2 years ago
gaspool.go
miner: avoid unnecessary work ( #15883 )
7 years ago
gen_genesis.go
core: change baseFee into baseFeePerGas in genesis json
3 years ago
gen_genesis_account.go
tests: update for London ( #22976 )
3 years ago
genesis.go
all: remove support for Ropsten ( #26644 )
2 years ago
genesis_alloc.go
all: remove support for Ropsten ( #26644 )
2 years ago
genesis_test.go
all: remove support for Ropsten ( #26644 )
2 years ago
headerchain.go
cmd, core, eth, els, params: disallow setheads below genesis, tweaks
2 years ago
headerchain_test.go
core, eth, les, tests, trie: abstract node scheme ( #25532 )
2 years ago
mkalloc.go
build: upgrade to go 1.19 ( #25726 )
2 years ago
rlp_test.go
all: cleanup tests ( #25641 )
2 years ago
sender_cacher.go
all: refactor txpool into it's own package in prep for 4844
2 years ago
state_prefetcher.go
all: implement EIP-1153 transient storage ( #26003 )
2 years ago
state_processor.go
all: implement withdrawals (EIP-4895) ( #26484 )
2 years ago
state_processor_test.go
tests: update ( #26548 )
2 years ago
state_transition.go
core/vm: implement EIP-3860: Limit and meter initcode ( #23847 )
2 years ago
types.go
core: prefetch next block state concurrently
6 years ago