Commit Graph

13855 Commits

Author SHA1 Message Date
Péter Szilágyi
12f0ff40b1
params: release Geth v1.10.7 2021-08-12 10:14:03 +03:00
Péter Szilágyi
971df49fe2
Merge pull request #23385 from karalabe/cht-1.10.7
params: update CHTs for the 1.10.7 release
2021-08-12 10:13:05 +03:00
Péter Szilágyi
f4ad493870
params: update CHTs for the 1.10.7 release 2021-08-12 10:11:39 +03:00
Péter Szilágyi
2a451f9eb3
Merge pull request #23384 from holiman/fix_gasfoo
internal/ethapi: add back missing check for maxfee < maxPriorityFee
2021-08-12 09:57:06 +03:00
Martin Holst Swende
278ec7176a
internal/ethapi: add back missing check for maxfee < maxPriorityFee 2021-08-12 08:14:21 +02:00
Péter Szilágyi
deff5056fb
Merge pull request #23374 from karalabe/fix-docker-tag
build: fix docker tag to include `v` prefix in version string
2021-08-10 17:52:57 +03:00
Péter Szilágyi
c27bd3481e
build: fix docker tag to include v prefix in version string 2021-08-10 17:49:52 +03:00
Péter Szilágyi
0fbc94eabc
Merge pull request #23373 from karalabe/docker-flip
travis: transition from docker auto builds to manual pushes
2021-08-10 17:31:10 +03:00
Péter Szilágyi
9097d0a325
travis: transition from docker auto builds to manual pushes 2021-08-10 17:13:06 +03:00
Péter Szilágyi
5d0ab07343
Merge pull request #23371 from karalabe/gofmt
core/state/snapshot: gofmt
2021-08-10 16:59:25 +03:00
Péter Szilágyi
9d6480c3cd
core/state/snapshot: gofmt 2021-08-10 16:58:38 +03:00
lightclient
a879c42bd3
internal/ethapi, accounts/abi/bind: cap highest gas limit by account balance for 1559 fee parameters (#23309)
* internal/ethapi/api: cap highest gas limit by account balance for 1559 fee parameters

* accounts/abi/bind: port gas limit cap for 1559 parameters to simulated backend

* accounts/abi/bind: add test for 1559 gas estimates for the simulated backend

* internal/ethapi/api: fix comment

* accounts/abi/bind/backends, internal/ethapi: unify naming style

Co-authored-by: Péter Szilágyi <peterke@gmail.com>
2021-08-10 16:56:34 +03:00
lightclient
39fe7eca6b
internal/ethapi: return maxFeePerGas for gasPrice for EIP-1559 txs (#23345) 2021-08-10 16:39:06 +03:00
kyrie-yl
8d5f2ba90d
Merge pull request #360 from guagualvcha/fix_win_prune
fix syc failed on windows when prune
2021-08-10 21:28:14 +08:00
Tyler Chambers
66948316f7
core/state/snapshot: clarify comment about snapshot repair (#23305)
Co-authored-by: Tyler Chambers <me@tylerchambers.net>
Co-authored-by: Felix Lange <fjl@twurst.com>
2021-08-10 11:16:53 +02:00
Ziyuan Zhong
57d9e0ac75
core/state/snapshot: fix typo in comment (#23219) 2021-08-10 11:04:29 +02:00
Zachinquarantine
e4b687cf46
mobile: remove deprecated code (#23357) 2021-08-10 11:40:54 +03:00
gary rong
6d175460df
cmd, core, eth, miner: deprecate miner.gastarget flag (#23213) 2021-08-10 11:28:33 +03:00
Péter Szilágyi
520f25688a
Merge pull request #23370 from karalabe/windows-pruning-fix-b
core/state/pruner: fix state bloom sync permission in Windows
2021-08-10 11:04:39 +03:00
Péter Szilágyi
3b38a83274
core/state/pruner: fix state bloom sync permission in Windows 2021-08-10 10:40:10 +03:00
fudongbai
29707b9252 fix syc failed on windows when prune 2021-08-10 15:19:32 +08:00
Felföldi Zsolt
97bd6cd216
internal/ethapi: accept both hex and decimal for blockCount (#23363) 2021-08-10 09:53:40 +03:00
zjubfd
6fcce0dce9
fix pending block null issue (#358) 2021-08-10 12:03:15 +08:00
zjubfd
955c78bde0
[R4R] the miner module should propose block on a proper fork (#355)
* change Canon chain condition

* resolve comment
2021-08-10 10:33:00 +08:00
shawn
d60cfd2604
core: fix london-check to avoid duplication (#23333)
Co-authored-by: lxex <liuxmzc1@163.com>
2021-08-09 16:34:20 +02:00
barryz
3bd4e29954
fix: TriesInmemory specified but not work (#350)
* fix: TriesInmemory specified but not work

* change warning log when TriesInMemory isn't default
2021-08-09 13:48:43 +08:00
Shihao Xia
9e59474e46
core/rawdb: close database in test to avoid goroutine leak (#23287)
* add db close to avoid goroutine leak

* core/rawdb: move close to defer

Co-authored-by: Martin Holst Swende <martin@swende.se>
2021-08-08 15:44:42 +02:00
Martin Holst Swende
8a24b56331
cmd/evm: implement input txs via rlp in t8n tool (#23138)
In many cases, it's desireable to use already-signed transactions as input to the state transition, instead of having the evm sign them internally (for example to use malformed or not-yet-valid transactions). This PR adds support + docs for that feature.
2021-08-07 23:04:34 +02:00
Martin Holst Swende
0658712f65
core: check if sender is EOA (#23303)
This adds a check to verify that a sender-account does not have code, which means that the codehash is either `emptyCodeHash` _OR_ not present. The latter occurs IFF the sender did not previously exist, a situation which can only occur with zero cost gasprices.
2021-08-07 19:38:18 +02:00
Patrick O'Grady
d3e3a460ec
core/rawdb: fix logs to print block number, not address (#23328) 2021-08-04 11:10:37 +03:00
Marius van der Wijden
28ba686cbf
core/state: add trie prefetcher tests (#23216)
* core/state: add trie prefetcher tests

* core/state: add missing license
2021-08-03 17:35:25 +02:00
gary rong
f311488d2c
internal/ethapi: fix trace log marshalling (#23292) 2021-08-03 17:32:13 +02:00
Sina Mahmoodi
c38fab912b
core: get header from block cache (#23299) 2021-08-03 17:29:47 +02:00
Martin Holst Swende
4cd6a1458e
cmd/devp2p: fix ping/pong race in discv4 tests (#23306)
This PR modifies the post-PING-send expectations to both be laxer and stricter: it doesn't care what order the packets arrive, but also verifies that exactly one PING and one PONG is returned.
2021-08-03 11:21:39 +02:00
aaronbuchwald
82c5085399
cre/state: fix outdated statedb Prepare comment (#23320) 2021-08-03 09:06:58 +03:00
baptiste-b-pegasys
95bbd46eab
node, cmd/clef: remove term "whitelist" (#23296)
* node: remove term "whitelist"

* include cmd/clef
2021-08-02 15:43:01 +02:00
baptiste-b-pegasys
85afdeef37
tests: remove whitelist feature (#23297) 2021-07-29 20:23:37 +02:00
baptiste-b-pegasys
860184d542
p2p: remove term "whitelist" (#23295)
Co-authored-by: Felix Lange <fjl@twurst.com>
2021-07-29 17:50:18 +02:00
baptiste-b-pegasys
3526f69047
all: remove term "whitelist" in comments and log messages (#23294) 2021-07-29 17:36:15 +02:00
Martin Holst Swende
295bc35ecf
signer/core: move API JSON types to separate package (#23275)
This PR moves (some) account types into a standalone package, to avoid
depending on signer/core from accounts/external.
2021-07-29 16:06:44 +02:00
Evolution404
8f11d279d2
p2p/simulations: fix unlikely crash in probabilistic connect (#23200)
When the nodeCount is less than 10, it will panic with the out of bound error.
How about we just skip this round, when rand1 and rand2 are equal?
2021-07-29 16:03:50 +02:00
Sina Mahmoodi
b157bae2c9
go.mod: bump golang.org/x/text to v0.3.6 (#23291) 2021-07-29 15:20:45 +02:00
ucwong
64a5e125c5
go.mod: upgrade to goupnp v1.0.2 (#23197) 2021-07-29 15:20:15 +02:00
Marius van der Wijden
fb8ea5993f
tests: update tests/testdata to v9.0.4 (london) (#23279) 2021-07-29 14:05:22 +02:00
Martin Holst Swende
5c13012b56
accounts/external, internal/ethapi: fixes for London tx signing (#23274)
Ticket #23273 found a flaw where we were unable to sign legacy-transactions
using the external signer, even if we're still on non-london network. That's
fixed in this PR.

Additionally, I found that even when supplying all parameters, it was impossible
to sign a london-transaction on an unsynched node. It's a pretty common usecase
that someone wants to sign a transaction using an unsynced 'vanilla' node,
providing all necessary data. Our setDefaults, however, insisted on checking the
current block against the config. This PR therefore adds a case, so that if both
MaxPriorityFeePerGas and MaxFeePerGas are provided, we accept them as given.

OBS This PR fixes a regression -- on current master, we are unable to sign a
london-transaction unless the node is synched, which may break scenarios where
geth (or clef) is used as a cold wallet.

Fixes #23273
2021-07-29 14:00:06 +02:00
zjubfd
69ce7f1e5e
prepare release 1.1.1-beta (#334) v1.1.1-beta 2021-07-29 18:53:24 +08:00
dylanhuang
7e8d9fb51d
fix: block fetcher efficiency (#333) 2021-07-29 17:17:11 +08:00
zjubfd
2ce00adb55
[R4R] performance improvement in many aspects (#257)
* focus on performance improvement in many aspects.

1. Do BlockBody verification concurrently;
2. Do calculation of intermediate root concurrently;
3. Preload accounts before processing blocks;
4. Make the snapshot layers configurable.
5. Reuse some object to reduce GC.

add

* rlp: improve decoder stream implementation (#22858)

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.

* rlp: use atomic.Value for type cache (#22902)

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.

* rlp: optimize byte array handling (#22924)

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)

* rlp: optimize big.Int decoding for size <= 32 bytes (#22927)

This change grows the static integer buffer in Stream to 32 bytes,
making it possible to decode 256bit integers without allocating a
temporary buffer.

In the recent commit 088da24, Stream struct size decreased from 120
bytes down to 88 bytes. This commit grows the struct to 112 bytes again,
but the size change will not degrade performance because Stream
instances are internally cached in sync.Pool.

    name             old time/op    new time/op    delta
    DecodeBigInts-8    12.2µs ± 0%     8.6µs ± 4%  -29.58%  (p=0.000 n=9+10)

    name             old speed      new speed      delta
    DecodeBigInts-8   230MB/s ± 0%   326MB/s ± 4%  +42.04%  (p=0.000 n=9+10)

* eth/protocols/eth, les: avoid Raw() when decoding HashOrNumber (#22841)

Getting the raw value is not necessary to decode this type, and
decoding it directly from the stream is faster.

* fix testcase

* debug no lazy

* fix can not repair

* address comments

Co-authored-by: Felix Lange <fjl@twurst.com>
2021-07-29 17:16:53 +08:00
John.h
f124267144
eth/tracers: improve tracing performance (#23016) (#326)
* eth/tracers: improve tracing performance (#23016)

Improves the performance of debug.traceTransaction

* Update the import order

Co-authored-by: Martin Holst Swende <martin@swende.se>
Co-authored-by: John.H <john.h@binance.com>
2021-07-29 17:08:41 +08:00
baptiste-b-pegasys
523866c2cc
all: change blacklist terms 2021-07-29 11:17:40 +03:00