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.
Felix Lange
9bbb9df185
core/types: transaction and receipt encoding/decoding optimizations ( #27976 )
...
Just some minor optimizations I figured out a while ago. By using ReadBytes instead of
Bytes on the rlp stream, we can save the allocation of a temporary buffer for the typed tx
payload.
If kind == rlp.Byte, the size reported by Stream.Kind will be zero, but we need a buffer
of size 1 for ReadBytes. Since typed txs always have to be longer than 1 byte, we can just
return an error for kind == rlp.Byte.
There is a also a small change for Log: since the first three fields of Log are the ones that
should appear in the canon encoding, we can simply ignore the remaining fields via
struct tag. Doing this removes an indirection through the rlpLog type.
---------
Co-authored-by: Martin Holst Swende <martin@swende.se>
1 year ago
..
asm
core/asm: remove unused return value ( #27272 )
2 years ago
bloombits
core/bloombits: use atomic type ( #26993 )
2 years ago
forkid
core/forkid: correctly compute forkid when timestamp fork is activated in genesis ( #27895 )
1 year ago
rawdb
all: use rlp.DecodeBytes instead of rlp.Decode where possible ( #27994 )
1 year ago
state
core/state/snapshot: replace diffToDisk ideal batch size with 64MB ( #27977 )
1 year ago
txpool
miner: add to build block with EIP-4844 blobs ( #27875 )
1 year ago
types
core/types: transaction and receipt encoding/decoding optimizations ( #27976 )
1 year ago
vm
core/vm/runtime: Add Random field to config ( #28001 )
1 year ago
.gitignore
Renamed `chain` => `core`
10 years ago
bench_test.go
core/types, params: add blob transaction type, RLP encoded for now ( #27049 )
2 years ago
block_validator.go
core/types: support for optional blob sidecar in BlobTx ( #27841 )
1 year ago
block_validator_test.go
all: activate pbss as experimental feature ( #26274 )
1 year ago
blockchain.go
core, eth, trie: expose more detailed dirty ram tracking for diff layers ( #27971 )
1 year ago
blockchain_insert.go
core, eth, trie: expose more detailed dirty ram tracking for diff layers ( #27971 )
1 year ago
blockchain_reader.go
all: activate pbss as experimental feature ( #26274 )
1 year ago
blockchain_repair_test.go
core/rawdb, ethdb/pebble: avoid fsync db in tests ( #27836 )
1 year ago
blockchain_sethead_test.go
core/rawdb, ethdb/pebble: avoid fsync db in tests ( #27836 )
1 year ago
blockchain_snapshot_test.go
core/rawdb, ethdb/pebble: avoid fsync db in tests ( #27836 )
1 year ago
blockchain_test.go
core, eth, trie: expose more detailed dirty ram tracking for diff layers ( #27971 )
1 year 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
core,console: replace noarg fmt.Errorf with errors.New ( #27332 )
1 year ago
chain_indexer_test.go
core: fix potential race in chainIndexerTest ( #22346 )
4 years ago
chain_makers.go
core: add BeaconRoot to header in GenerateChain ( #27974 )
1 year ago
chain_makers_test.go
all: activate pbss as experimental feature ( #26274 )
1 year ago
dao_test.go
all: activate pbss as experimental feature ( #26274 )
1 year ago
error.go
all: replace data gas to blob gas in comments ( #27825 )
1 year ago
events.go
eth/filters: remove use of event.TypeMux for pending logs ( #20312 )
5 years ago
evm.go
all: rename dataGas to blobGas ( #27789 )
1 year ago
forkchoice.go
core: clarify code in forkchoice ( #26257 )
2 years ago
gaspool.go
core, miner: revert block gas counter in case of invalid transaction ( #26799 )
2 years ago
gen_genesis.go
all: rename dataGas to blobGas ( #27789 )
1 year ago
gen_genesis_account.go
tests: update for London ( #22976 )
3 years ago
genesis.go
cmd, core, params: add support for the Holesky testnet ( #28007 )
1 year ago
genesis_alloc.go
cmd, core, params: add support for the Holesky testnet ( #28007 )
1 year ago
genesis_test.go
all: activate pbss as experimental feature ( #26274 )
1 year ago
headerchain.go
all: remove ethash pow, only retain shims needed for consensus and tests ( #27178 )
2 years ago
headerchain_test.go
all: activate pbss as experimental feature ( #26274 )
1 year ago
mkalloc.go
cmd, core, params: add support for the Holesky testnet ( #28007 )
1 year 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
core/types, params: add blob transaction type, RLP encoded for now ( #27049 )
2 years ago
state_processor.go
core, params, beacon/engine: implement EIP 4788 BeaconRoot ( #27849 )
1 year ago
state_processor_test.go
core, params, beacon/engine: implement EIP 4788 BeaconRoot ( #27849 )
1 year ago
state_transition.go
all: replace data gas to blob gas in comments ( #27825 )
1 year ago
types.go
core: use atomic type ( #27011 )
2 years ago