- May 25, 2021
-
-
ucwong authored
-
- May 24, 2021
-
-
Fire Man authored
-
- May 22, 2021
-
-
Felix Lange authored
This change improves the performance of encoding/decoding [N]byte. name old time/op new time/op delta DecodeByteArrayStruct-8 336ns ± 0% 246ns ± 0% -26.98% (p=0.000 n=9+10) EncodeByteArrayStruct-8 225ns ± 1% 148ns ± 1% -34.12% (p=0.000 n=10+10) name old alloc/op new alloc/op delta DecodeByteArrayStruct-8 120B ± 0% 48B ± 0% -60.00% (p=0.000 n=10+10) EncodeByteArrayStruct-8 0.00B 0.00B ~ (all equal)
-
Felix Lange authored
All encoding/decoding operations read the type cache to find the writer/decoder function responsible for a type. When analyzing CPU profiles of geth during sync, I found that the use of sync.RWMutex in cache lookups appears in the profiles. It seems we are running into CPU cache contention problems when package rlp is heavily used on all CPU cores during sync. This change makes it use atomic.Value + a writer lock instead of sync.RWMutex. In the common case where the typeinfo entry is present in the cache, we simply fetch the map and lookup the type.
-
- May 21, 2021
-
-
Gary Rong authored
This PR updates the miner stress tests and moves them to standalone packages, so that they can be run directly.
-
Péter Szilágyi authored
les: generate random nums directly, not via strange conversions
-
Péter Szilágyi authored
-
Evolution404 authored
-
Martin Holst Swende authored
* core/types, miner: create TxWithMinerFee wrapper, add EIP-1559 support to TransactionsByMinerFeeAndNonce miner: set base fee when creating a new header, handle gas limit, log miner fees * all: rename to NewTransactionsByPriceAndNonce * core/types, miner: rename to NewTransactionsByPriceAndNonce + EffectiveTip miner: activate 1559 for testGenerateBlockAndImport tests * core,miner: revert naming to TransactionsByPriceAndTime * core/types/transaction: update effective tip calculation logic * miner: update aleut to london * core/types/transaction_test: use correct signer for 1559 txs + add back sender check * miner/worker: calculate gas target from gas limit * core, miner: fix block gas limits for 1559 Co-authored-by:
Ansgar Dietrichs <adietrichs@gmail.com> Co-authored-by:
lightclient@protonmail.com <lightclient@protonmail.com>
-
- May 20, 2021
-
-
Felix Lange authored
-
- May 19, 2021
-
-
Péter Szilágyi authored
This change extracts the peer QoS tracking logic from eth/downloader, moving it into the new package p2p/msgrate. The job of msgrate.Tracker is determining suitable timeout values and request sizes per peer. The snap sync scheduler now uses msgrate.Tracker instead of the hard-coded 15s timeout. This should make the sync work better on network links with high latency.
-
- May 18, 2021
-
-
lightclient authored
-
Felix Lange authored
This commit makes various cleanup changes to rlp.Stream. * rlp: shrink Stream struct This removes a lot of unused padding space in Stream by reordering the fields. The size of Stream changes from 120 bytes to 88 bytes. Stream instances are internally cached and reused using sync.Pool, so this does not improve performance. * rlp: simplify list stack The list stack kept track of the size of the current list context as well as the current offset into it. The size had to be stored in the stack in order to subtract it from the remaining bytes of any enclosing list in ListEnd. It seems that this can be implemented in a simpler way: just subtract the size from the enclosing list context in List instead.
-
Felix Lange authored
This changes the definitions of Ping and Pong, adding an optional field for the sequence number. This field was previously encoded/decoded using the "tail" struct tag, but using "optional" is much nicer.
-
Shane Bammel authored
* forkid: added failing test * forkid: fixed off-by-one bug
-
Evolution404 authored
-
- May 17, 2021
-
-
Martin Holst Swende authored
-
Martin Holst Swende authored
This PR fixes two errors that regressed when EIP-1559 was merged.
-
Martin Holst Swende authored
This is the initial implementation of EIP-1559 in packages core/types and core. Mining, RPC, etc. will be added in subsequent commits. Co-authored-by:
Marius van der Wijden <m.vanderwijden@live.de> Co-authored-by:
lightclient@protonmail.com <lightclient@protonmail.com> Co-authored-by:
Felix Lange <fjl@twurst.com>
-
Martin Holst Swende authored
-
lightclient authored
* cmd/evm: return json error if unmarshalling from stdin fails * cmd/evm: make error capitalizations uniform (all lowercase starts) * cmd/evm: capitalize error sent directly to stderror
-
- May 12, 2021
-
-
Martin Holst Swende authored
* cmd/geth, eth, core: snapshot dump + unify with trie dump * cmd/evm: dump API fixes * cmd/geth, core, eth: fix some remaining errors * cmd/evm: dump - add limit, support address startkey, address review concerns * cmd, core/state, eth: minor polishes, fix snap dump crash, unify format Co-authored-by:
Péter Szilágyi <peterke@gmail.com>
-
Péter Szilágyi authored
consensus/ethash: implement EIP-3554 (bomb delay)
-
- May 11, 2021
-
-
Guillaume Ballet authored
* Ensure state could be created in ToBlock * Fix rebase errors * use a panic instead
-
Péter Szilágyi authored
eth/tracers: do the JSON serialization via .js to capture C faults
-
Péter Szilágyi authored
-
Ryan Schneider authored
This adds a cmd line parameter `--gpo.ignoreprice`, to make the gas price oracle ignore transactions below the given threshold.
-
Felix Lange authored
* core/types: remove support for legacy receipt storage encoding * core/types: remove support for legacy log storage encoding
-
- May 10, 2021
-
-
Felix Lange authored
-
Felix Lange authored
Getting the raw value is not necessary to decode this type, and decoding it directly from the stream is faster.
-
Martin Holst Swende authored
-
Ceelog authored
'geth monitor' subcommand is no longer supported.
-
Marius Kjærstad authored
-
- May 07, 2021
-
-
Felix Lange authored
This adds support for a new struct tag "optional". Using this tag, structs used for RLP encoding/decoding can be extended in a backwards-compatible way, by adding new fields at the end.
-
Martin Holst Swende authored
-
Martin Holst Swende authored
-
Martin Holst Swende authored
* core, params: implement EIP-3529 * core/vm: add london instructionset * core/vm: add method doc for EIP enabler Co-authored-by:
Péter Szilágyi <peterke@gmail.com>
-
Péter Szilágyi authored
core: implement EIP-3541
-
- May 06, 2021
-
-
Paweł Bylica authored
-
Martin Holst Swende authored
* all: define London+baikal, undefine yolov3, add london override flag * cmd, core, params: add baikal genesis definition
-