Commit Graph

12495 Commits

Author SHA1 Message Date
Igor Mandrigin
7e506617f0 to-merge 2020-08-12 11:49:22 +02:00
Alex Sharov
16f09be0a8
add method .Last() (#909) 2020-08-12 10:49:52 +07:00
Alex Sharov
760fe0f0b6
DupSort of hash state (#896) 2020-08-12 09:57:55 +07:00
Evgeny Danilenko
3980fa7d45
Grps eth_sendTransaction (#882)
* implementation

* tidy gomod

* linters

* fix cmd test

* fix

* fix lint
2020-08-11 22:09:30 +01:00
ledgerwatch
6f88e4058f
Fix (#908) 2020-08-11 20:48:37 +01:00
Alex Sharov
6de7eb1bec
correct_thread_lock_on_non_managed_tx (#905) 2020-08-11 18:53:47 +07:00
Alex Sharov
7addf34f64
fix wrong merge (#907) 2020-08-11 18:24:39 +07:00
Alex Sharov
088bb58023
Migrations validation: duplicate names and commit call (#902) 2020-08-11 18:23:41 +07:00
Alex Sharov
3899f2defe
recover_from_hashstate_stage_interruption (#903) 2020-08-11 17:41:06 +07:00
Alex Sharov
6df97dec22
save progress (#886) 2020-08-11 17:36:29 +07:00
Alex Sharov
e89ad5d6aa
sub tx support (#895) 2020-08-11 17:35:59 +07:00
Alex Sharov
695f8f8904
allow multi-rollback (#904) 2020-08-11 17:35:19 +07:00
ledgerwatch
381f721f01
Update skip analysis block number for mainnet (#906) 2020-08-11 11:23:07 +01:00
alex.sharov
94c3b4bb05 gitignore python tmp files 2020-08-11 09:28:14 +07:00
Alex Sharov
d9d9e14f45
change bucket type to string (#894) 2020-08-11 06:55:32 +07:00
Alex Sharov
7a1b892022
remove .SeekTo() method (#901) 2020-08-11 06:41:15 +07:00
Alex Sharov
091819a51c
adopt --metrics.addr flag in integration (#889) 2020-08-11 06:38:34 +07:00
Alex Sharov
6c0ff33366
integration: clear unwind stack (#890) 2020-08-11 06:38:19 +07:00
Giulio rebuffo
057894994d
add blockhashes stage (#862)
* add blockhashes stage

* unwindOrder specified

* fixed typo

* added common.copybytes

* fixed little typo

* better progress

* better progress

* refactoring with etl

* added blockhashes to disabled stages in cmd/integration

* added migraations

* fixed go.mod

* better migrations

* rename unwind

* simplified migrations

* added onloadcommit
2020-08-10 18:46:06 +01:00
Alex Sharov
81c487803e
add python docs (#900) 2020-08-10 16:36:46 +07:00
Alex Sharov
5c75003456
fix migration idempotency (#898) 2020-08-10 16:16:14 +07:00
Alex Sharov
115cc7d736
use transactional putter (#893) 2020-08-10 14:28:38 +07:00
Igor Mandrigin
34fd8b0c17
Merge pull request #888 from ledgerwatch/geth-1.9.18
Geth 1.9.18
2020-08-08 18:05:56 +02:00
Igor Mandrigin
8600616c3d geth 1.9.18 post-rebase fixups 2020-08-08 17:33:35 +02:00
Hadrien Croubois
df7a23c0b4
fix docker-compose turbogeth database location (#883) 2020-08-08 08:16:33 +07:00
Martin Holst Swende
e3e00089f4 eth/downloader: refactor downloader + queue (#21263)
* eth/downloader: refactor downloader + queue

downloader, fetcher: throttle-metrics, fetcher filter improvements, standalone resultcache

downloader: more accurate deliverytime calculation, less mem overhead in state requests

downloader/queue: increase underlying buffer of results, new throttle mechanism

eth/downloader: updates to tests

eth/downloader: fix up some review concerns

eth/downloader/queue: minor fixes

eth/downloader: minor fixes after review call

eth/downloader: testcases for queue.go

eth/downloader: minor change, don't set progress unless progress...

eth/downloader: fix flaw which prevented useless peers from being dropped

eth/downloader: try to fix tests

eth/downloader: verify non-deliveries against advertised remote head

eth/downloader: fix flaw with checking closed-status causing hang

eth/downloader: hashing avoidance

eth/downloader: review concerns + simplify resultcache and queue

eth/downloader: add back some locks, address review concerns

downloader/queue: fix remaining lock flaw

* eth/downloader: nitpick fixes

* eth/downloader: remove the *2*3/4 throttling threshold dance

* eth/downloader: print correct throttle threshold in stats

Co-authored-by: Péter Szilágyi <peterke@gmail.com>
# Conflicts:
#	eth/downloader/downloader.go
#	eth/downloader/downloader_test.go
#	eth/downloader/queue.go
#	eth/downloader/statesync.go
#	eth/fetcher/block_fetcher.go
2020-08-07 14:23:49 +02:00
Péter Szilágyi
f80fee94ab params: release Geth v1.9.18
# Conflicts:
#	params/version.go
2020-08-07 13:54:41 +02:00
gary rong
5f15f68afb params: upgrade CHTs (#21376) 2020-08-07 13:54:06 +02:00
rjl493456442
b702eee5f4 core: fix heartbeat in txpool
core: address comment

# Conflicts:
#	core/tx_pool.go
2020-08-07 13:53:54 +02:00
villanuevawill
18ef3d01d8 core: fix queued transaction eviction
Solves issue#20582. Non-executable transactions should not be evicted on each tick if there are no promote transactions or if a pending/reset empties the pending list. Tests and logging expanded to handle these cases in the future.

core/tx_pool: use a ts for each tx in the queue, but only update the heartbeat on promotion or pending replaced

queuedTs proper naming

# Conflicts:
#	core/tx_pool.go
2020-08-07 13:53:16 +02:00
Felix Lange
150bfa38e1 mobile: fix build on iOS (#21362)
This fixes the iOS framework build by naming the second parameter of the
Signer interface method. The name is important because it becomes part
of the objc method signature.

Fixes #21340
# Conflicts:
#	mobile/bind.go
2020-08-07 13:51:45 +02:00
Felix Lange
f70e4e8c75 build: fix GOBIN for gomobile commands (#21361) 2020-08-07 13:51:22 +02:00
meowsbits
dd3e143b55 cmd/utils: implement configurable developer (--dev) account options (#21301)
* geth,utils: implement configurable developer account options

Prior to this change --dev (developer) mode
generated one account with an empty password,
irrespective of existing --password and --miner.etherbase
options.

This change makes --dev mode compatible with these
existing flags.

--dev mode may now be used in conjunction with
--password and --miner.etherbase flags to configure
the developer faucet using an existing keystore or
in creating a new account.

Signed-off-by: meows <b5c6@protonmail.com>

* main: remove key/pass flags from usage developer section

These flags are included already in other sections,
and it is not desired to duplicate them.

They were originally included in this section
along with added support for these flags in the
developer mode.

Signed-off-by: meows <b5c6@protonmail.com>
2020-08-07 13:51:15 +02:00
Péter Szilágyi
a61131dfa7 cmd/utils: reuse existing genesis in persistent dev mode
# Conflicts:
#	cmd/utils/flags.go
2020-08-07 13:51:04 +02:00
Sammy Libre
349f8e121f ethclient: serialize negative block number as "pending" (#21177)
Fixes #21175

Co-authored-by: sammy007 <sammy007@users.noreply.github.com>
Co-authored-by: Adam Schmideg <adamschmideg@users.noreply.github.com>
2020-08-07 13:49:28 +02:00
Binacs
390f3404e6 les: make clientPool.connectedBias configurable (#21305)
# Conflicts:
#	les/api.go
#	les/clientpool.go
#	les/clientpool_test.go
2020-08-07 13:49:18 +02:00
gary rong
9797148f6f accounts, internal: fix funding check when estimating gas (#21346)
* internal, accounts: fix funding check when estimate gas

* accounts, internal: address comments
# Conflicts:
#	accounts/abi/bind/backends/simulated.go
2020-08-07 13:48:47 +02:00
Péter Szilágyi
f6e0ff5cb1 ethstats: fix reconnection issue, implement primus pings 2020-08-07 13:47:33 +02:00
Péter Szilágyi
4701dcb508 core/vm: use pointers to operations vs. copy by value
# Conflicts:
#	core/vm/interpreter.go
2020-08-07 13:47:25 +02:00
Nikola Madjarevic
c0a26827a3 core: raise gas limit in --dev mode, seed blake precompile (#21323)
* Set gasLimit in --dev mode to be 9m.

* core: Set gasLimit to 11.5 milion and add 1 wei allocation for BLAKE2b
2020-08-07 13:46:40 +02:00
Martin Holst Swende
a4b70f9ee9 core/vm: less allocations for various call variants (#21222)
* core/vm/runtime/tests: add more benchmarks

* core/vm: initial work on improving alloc count for calls to precompiles

name                                  old time/op    new time/op    delta
SimpleLoop/identity-precompile-10M-6     117ms ±75%      43ms ± 1%  -63.09%  (p=0.008 n=5+5)
SimpleLoop/loop-10M-6                   79.6ms ± 4%    70.5ms ± 1%  -11.42%  (p=0.008 n=5+5)

name                                  old alloc/op   new alloc/op   delta
SimpleLoop/identity-precompile-10M-6    24.4MB ± 0%     4.9MB ± 0%  -79.94%  (p=0.008 n=5+5)
SimpleLoop/loop-10M-6                   13.2kB ± 0%    13.2kB ± 0%     ~     (p=0.357 n=5+5)

name                                  old allocs/op  new allocs/op  delta
SimpleLoop/identity-precompile-10M-6      382k ± 0%      153k ± 0%  -59.99%  (p=0.000 n=5+4)
SimpleLoop/loop-10M-6                     40.0 ± 0%      40.0 ± 0%     ~     (all equal)

* core/vm: don't allocate big.int for touch

name                                  old time/op    new time/op    delta
SimpleLoop/identity-precompile-10M-6    43.3ms ± 1%    42.4ms ± 7%     ~     (p=0.151 n=5+5)
SimpleLoop/loop-10M-6                   70.5ms ± 1%    76.7ms ± 1%   +8.67%  (p=0.008 n=5+5)

name                                  old alloc/op   new alloc/op   delta
SimpleLoop/identity-precompile-10M-6    4.90MB ± 0%    2.46MB ± 0%  -49.83%  (p=0.008 n=5+5)
SimpleLoop/loop-10M-6                   13.2kB ± 0%    13.2kB ± 1%     ~     (p=0.571 n=5+5)

name                                  old allocs/op  new allocs/op  delta
SimpleLoop/identity-precompile-10M-6      153k ± 0%       76k ± 0%  -49.98%  (p=0.029 n=4+4)
SimpleLoop/loop-10M-6                     40.0 ± 0%      40.0 ± 0%     ~     (all equal)

* core/vm: reduce allocs in staticcall

name                                  old time/op    new time/op    delta
SimpleLoop/identity-precompile-10M-6    42.4ms ± 7%    37.5ms ± 6%  -11.68%  (p=0.008 n=5+5)
SimpleLoop/loop-10M-6                   76.7ms ± 1%    69.1ms ± 1%   -9.82%  (p=0.008 n=5+5)

name                                  old alloc/op   new alloc/op   delta
SimpleLoop/identity-precompile-10M-6    2.46MB ± 0%    0.02MB ± 0%  -99.35%  (p=0.008 n=5+5)
SimpleLoop/loop-10M-6                   13.2kB ± 1%    13.2kB ± 0%     ~     (p=0.143 n=5+5)

name                                  old allocs/op  new allocs/op  delta
SimpleLoop/identity-precompile-10M-6     76.4k ± 0%      0.1k ± 0%     ~     (p=0.079 n=4+5)
SimpleLoop/loop-10M-6                     40.0 ± 0%      40.0 ± 0%     ~     (all equal)

* trie: better use of hasher keccakState

* core/state/statedb: reduce allocations in getDeletedStateObject

* core/vm: reduce allocations in all call derivates

* core/vm: reduce allocations in call variants

- Make returnstack `uint32`
- Use a `sync.Pool` of `stack`s

* core/vm: fix tests

* core/vm: goimports

* core/vm: tracer fix + staticcall gas fix

* core/vm: add back snapshot to staticcall

* core/vm: review concerns + make returnstack pooled + enable returndata in traces

* core/vm: fix some test tracer method signatures

* core/vm: run gencodec, minor comment polish

Co-authored-by: Péter Szilágyi <peterke@gmail.com>
# Conflicts:
#	core/state/statedb.go
#	core/vm/contracts_test.go
#	core/vm/evm.go
#	core/vm/instructions.go
#	core/vm/interpreter.go
#	core/vm/logger.go
#	core/vm/logger_json.go
#	core/vm/logger_test.go
#	core/vm/runtime/runtime_test.go
#	core/vm/stack/stack.go
#	eth/tracers/tracer.go
#	eth/tracers/tracer_test.go
#	trie/secure_trie.go
2020-08-07 13:46:26 +02:00
Guillaume Ballet
9d85e7f2b0 trie: quell linter in commiter.go (#21329)
# Conflicts:
#	trie/committer.go
2020-08-07 13:24:03 +02:00
Martin Holst Swende
64565f4b2b core: transaction pool optimizations (#21328)
* core: added local tx pool test case

* core, crypto: various allocation savings regarding tx handling

* core/txlist, txpool: save a reheap operation, avoid some bigint allocs

Co-authored-by: Marius van der Wijden <m.vanderwijden@live.de>
2020-08-07 13:23:40 +02:00
rene
3f4770275d cmd/clef: change --rpcport to --http.port and update flags in docs (#21318)
# Conflicts:
#	cmd/abigen/main.go
#	cmd/checkpoint-admin/main.go
#	cmd/clef/main.go
#	cmd/ethkey/main.go
#	cmd/evm/main.go
#	cmd/geth/main.go
#	cmd/geth/usage.go
#	cmd/utils/flags.go
2020-08-07 13:23:29 +02:00
Felix Lange
8218dc2a04 p2p/discover: require table nodes to have an IP (#21330)
This fixes a corner case in discv5. The issue cannot happen in discv4
because it performs IP checks on all incoming node information.
2020-08-07 13:18:23 +02:00
gary rong
75102cfe1f core/rawdb: better log messages for ancient failure (#21327)
# Conflicts:
#	core/rawdb/database.go
2020-08-07 13:18:14 +02:00
rene
6a3c02f932 .github: Change Code Owners (#21326)
* modify code owners

* add marius
2020-08-07 13:17:56 +02:00
gary rong
1f2c824cb6 internal/ethapi: cap txfee for SignTransaction and Resend (#21231) 2020-08-07 13:17:46 +02:00
Tien
77d9be48d9 README.md: point Go API reference link to pkg.go.dev (#21321)
# Conflicts:
#	README.md
2020-08-07 13:17:32 +02:00
libotony
4713451b85 p2p/discv5: unset pingEcho on pong timeout (#21324) 2020-08-07 13:17:15 +02:00