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.
Martin HS
9045b79bc2
metrics, cmd/geth: change init-process of metrics ( #30814 )
...
This PR modifies how the metrics library handles `Enabled`: previously,
the package `init` decided whether to serve real metrics or just
dummy-types.
This has several drawbacks:
- During pkg init, we need to determine whether metrics are enabled or
not. So we first hacked in a check if certain geth-specific
commandline-flags were enabled. Then we added a similar check for
geth-env-vars. Then we almost added a very elaborate check for
toml-config-file, plus toml parsing.
- Using "real" types and dummy types interchangeably means that
everything is hidden behind interfaces. This has a performance penalty,
and also it just adds a lot of code.
This PR removes the interface stuff, uses concrete types, and allows for
the setting of Enabled to happen later. It is still assumed that
`metrics.Enable()` is invoked early on.
The somewhat 'heavy' operations, such as ticking meters and exp-decay,
now checks the enable-flag to prevent resource leak.
The change may be large, but it's mostly pretty trivial, and from the
last time I gutted the metrics, I ensured that we have fairly good test
coverage.
---------
Co-authored-by: Felix Lange <fjl@twurst.com>
2 months ago
..
asm
core/vm, cmd/evm: implement eof validation ( #30418 )
4 months ago
bloombits
all: fix typos in comments ( #29873 )
8 months ago
forkid
all: remove TerminalTotalDifficultyPassed ( #30609 )
4 months ago
rawdb
metrics, cmd/geth: change init-process of metrics ( #30814 )
2 months ago
state
metrics, cmd/geth: change init-process of metrics ( #30814 )
2 months ago
stateless
beacon, core, eth, miner: integrate witnesses into production Geth ( #30069 )
5 months ago
tracing
core/tracing: extends tracing.Hooks with OnSystemCallStartV2 ( #30786 )
2 months ago
txpool
metrics, cmd/geth: change init-process of metrics ( #30814 )
2 months ago
types
core/types: add length check in CalcRequestsHash ( #30829 )
2 months ago
vm
core/vm: remove unnecessary comment ( #30887 )
2 months ago
.gitignore
Renamed `chain` => `core`
10 years ago
bench_test.go
all: fix issues with benchmarks ( #30667 )
3 months ago
block_validator.go
core: switch EVM tx context in ApplyMessage ( #30809 )
2 months ago
block_validator_test.go
all: remove TerminalTotalDifficultyPassed ( #30609 )
4 months ago
blockchain.go
cmd/evm: improve block/state test runner ( #30633 )
2 months ago
blockchain_insert.go
all: remove forkchoicer and reorgNeeded ( #29179 )
5 months ago
blockchain_reader.go
core/state: introduce code reader interface ( #30816 )
2 months ago
blockchain_repair_test.go
core, eth, node: break rawdb -> {leveldb, pebble} dependency ( #30689 )
3 months ago
blockchain_sethead_test.go
core, eth, node: break rawdb -> {leveldb, pebble} dependency ( #30689 )
3 months ago
blockchain_snapshot_test.go
core, eth, node: break rawdb -> {leveldb, pebble} dependency ( #30689 )
3 months ago
blockchain_test.go
core, eth, node: break rawdb -> {leveldb, pebble} dependency ( #30689 )
3 months ago
bloom_indexer.go
core: preallocate batch size in bloomIndexer ( #25289 )
3 years ago
chain_indexer.go
core, eth, ethstats: simplify chain head events ( #30601 )
4 months ago
chain_indexer_test.go
all: improve some error strings ( #29842 )
9 months ago
chain_makers.go
all: exclude empty outputs in requests commitment ( #30670 )
2 months ago
chain_makers_test.go
all: remove TerminalTotalDifficultyPassed ( #30609 )
4 months ago
dao_test.go
all: remove forkchoicer and reorgNeeded ( #29179 )
5 months ago
error.go
cmd, core, params, trie: add verkle access witness gas charging ( #29338 )
9 months ago
events.go
core, eth, ethstats: simplify chain head events ( #30601 )
4 months ago
evm.go
all: use big.Sign to compare with zero ( #29490 )
10 months ago
gaspool.go
core, miner: revert block gas counter in case of invalid transaction ( #26799 )
2 years ago
gen_genesis.go
core: go fmt ( #29544 )
10 months ago
genesis.go
all: exclude empty outputs in requests commitment ( #30670 )
2 months ago
genesis_alloc.go
all: clean up goerli flag and config ( #30289 )
6 months ago
genesis_test.go
trie/utils: ensure master can generate a correct genesis for kaustinen7 ( #30856 )
2 months ago
headerchain.go
all: remove forkchoicer and reorgNeeded ( #29179 )
5 months ago
headerchain_test.go
all: remove forkchoicer and reorgNeeded ( #29179 )
5 months ago
mkalloc.go
accounts, cmd/geth, core: close opened files ( #29598 )
9 months ago
rlp_test.go
core: move genesis alloc types to core/types ( #29003 )
12 months ago
sender_cacher.go
all: refactor txpool into it's own package in prep for 4844
2 years ago
state_prefetcher.go
core: switch EVM tx context in ApplyMessage ( #30809 )
2 months ago
state_processor.go
core/tracing: extends tracing.Hooks with OnSystemCallStartV2 ( #30786 )
2 months ago
state_processor_test.go
core, trie: verkle state processor tests ( #30672 )
3 months ago
state_transition.go
core: switch EVM tx context in ApplyMessage ( #30809 )
2 months ago
stateless.go
cmd/evm: improve block/state test runner ( #30633 )
2 months ago
txindexer.go
core, eth, ethstats: simplify chain head events ( #30601 )
4 months ago
txindexer_test.go
core: use in-memory freezer for tests ( #29720 )
9 months ago
types.go
all: implement flat deposit requests encoding ( #30425 )
4 months ago
verkle_witness_test.go
all: typos in comments ( #30779 )
3 months ago