Commit Graph

407 Commits

Author SHA1 Message Date
Alex Sharov
f735997fa1
Sokol v0: remove unused parameters and methods (#2435) 2021-07-24 11:04:07 +07:00
Alex Sharov
4129918276
prune log index by wrong distance (#2434) 2021-07-24 10:36:05 +07:00
ledgerwatch
026c4e9d02
Reorg ropsten solution (#2419)
* Reorg ropsten solution

* Add option

* Print TD recalc

* Correct fix for eip1559

* Try to fix the unwind

* Print header progress and hash

* Not insert descendants of bad headers

* Print some more

* Print less

* Better way of marking bad headers

* Disable inSync

* Penalise peers who give incorrect chain pieces

* better fix for initial cycle

* Clean up

Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2021-07-22 16:49:36 +01:00
Alex Sharov
5dc0884f27
add stop point of tx_lookup unwind (#2413) 2021-07-22 12:40:00 +07:00
Alex Sharov
f3474dc9ba
Limit non-genesis jump for prune node (#2412) 2021-07-21 18:44:47 +07:00
Alex Sharov
d2552196ad
Sokol v0: support for first epoch-set transition (#2411) 2021-07-21 18:13:26 +07:00
Alex Sharov
33b122424c
clean logs (#2410) 2021-07-21 08:18:21 +01:00
Alex Sharov
c3e1cfdac8
Pruning for: exec, log_index, tx_lookup, history stages (#2399)
* Pruning for: exec, log_index, tx_lookup, history stages

* Pruning for: exec, log_index, tx_lookup, history stages

* Pruning for: exec, log_index, tx_lookup, history stages

* Pruning for: exec, log_index, tx_lookup, history stages

* add tvm flag

* save

* db migration for storage mode
add flag --prune=
remove flag --storage-mode=
add flag --experiments=tevm,...
rename integration set_storage_mode to set_prune

* fix

* forward move of stages must skip everything before PruneTo

* keep in db progress of prune method

* keep in db progress of prune method

* simplify logs

* simplify logs

* simplify logs

* fix test

* simplify logs

* simplify logs

* simplify logs

* simplify logs

* remove callTraceSet as dupsort
use etl transform for txlookup prune
remove some logs

* cleanup tests a bit

* print_stages and eth_sync to show prune progress

* fix print_stages

* add readme about --prune.to flag

* more docs

* add --prune.history.older and other flags support

* fix migration on empty db

* better toString

* better toString
2021-07-20 21:03:19 +01:00
Alex Sharov
5dbb14b219
fix notifications range (#2400) 2021-07-19 17:53:04 +07:00
Alex Sharov
13b29abcce
Make UnwindOrder variable non-inverted (#2395)
* revert unwind stages list

* revert unwind stages list
2021-07-18 16:42:50 +07:00
Alex Sharov
d9c5ef3eb9
Pruning stages order support (#2393) 2021-07-18 15:59:05 +07:00
Alex Sharov
58e22c5bc3
remove stage.Done() method (#2390) 2021-07-18 09:23:25 +07:00
Alex Sharov
766655205f
Remove sync.Prepare() func (#2389) 2021-07-17 23:07:09 +07:00
Alex Sharov
4c53f51767
Remove "persistent unwind" concept (#2388) 2021-07-17 21:14:51 +07:00
Alex Sharov
499b5ce6ce
remove reader/writer builder (#2386)
* remove builder

* remove builder
2021-07-17 13:38:53 +07:00
Alex Sharov
8d320aee07
add pruning stage concept, but not enable yet (#2385) 2021-07-17 13:38:44 +07:00
Alex Sharov
a79b3cd6eb
unify stage params (#2384) 2021-07-17 09:09:56 +07:00
Alex Sharov
5f55b6b89c
Remove stage builder and use ID's in unwindOrder (#2381) 2021-07-16 20:17:40 +07:00
Alex Sharov
356567676a
less allocs at call trace (#2363) 2021-07-14 21:34:23 +07:00
alex.sharov
34ba380087 print better log 2021-07-13 15:47:05 +07:00
Alex Sharov
08590211e6
Add defer collector.Close() (#2351)
* add defer collector.Close

* add defer collector.Close
2021-07-13 09:17:21 +07:00
Alex Sharov
623a3feeee
RPC: return all stages progress inside eth_syncing (#2353) 2021-07-13 09:17:05 +07:00
Alex Sharov
557d082c51
Sokol v0: epoch support (#2348)
* remove ctx from state writer interface

* call me baby

* save

* save

* can process block 1

* can process block 1

* can process block 1

* can process block 1

* save

* save

* parse logs logic

* cleans

* cleans

* cleans
2021-07-12 16:27:25 +01:00
Alex Sharov
2a8f1959a5
cleans (#2349) 2021-07-12 15:56:20 +07:00
Alex Sharov
188dfb14b8
txPool: propagate on peer connect (#2335) 2021-07-11 14:01:16 +07:00
Alex Sharov
2ec64aee1d
Simplify mining (#2339)
* save

* save
2021-07-11 04:05:33 +00:00
Alex Sharov
43af5d42b8
simplify staged sync world (#2336)
* simplify world

* simplify world

* simplify world
2021-07-10 16:43:58 +07:00
Alex Sharov
e98340d806
Simplify stagedsync.Prepare (#2317) 2021-07-08 20:52:22 +07:00
Alex Sharov
5ceaac53f6
batch cancel (#2314) 2021-07-08 19:40:49 +07:00
Alex Sharov
7c60cc0fee
step towards kv interface (#2313) 2021-07-08 09:56:09 +07:00
Alex Sharov
9683b26483
remove ctx from state writer interface (#2302) 2021-07-05 15:42:44 +07:00
Alex Sharov
6a5f86423c
Remove "numgc" from logs (#2275) 2021-07-03 14:44:23 +07:00
Alex Sharov
8e00da2035
Sokol v0: preparations for contracts run, proofs support (#2270) 2021-07-02 15:00:41 +07:00
Alex Sharov
6df7230108
Sokol v0 - better header rlp, steps to generate blocks (#2256) 2021-06-30 16:30:21 +07:00
Alex Sharov
8f6aa2f7ae
propagate new tx to p2p (#2254) 2021-06-29 17:00:22 +07:00
Alex Sharov
a6f4b08716
Revert "Propagate new txs to P2P (#2249)" (#2253)
This reverts commit e9ae6d688f.
2021-06-29 15:46:00 +07:00
Alex Sharov
e9ae6d688f
Propagate new txs to P2P (#2249) 2021-06-29 14:40:23 +07:00
ledgerwatch
7baf3ec484
Move secp256k1 into a separate go module, hook up erigon-lib (#2239)
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
2021-06-26 15:03:05 +01:00
Alex Sharov
605d7a8d59
Sokol v0 (#2228)
* handle chain flag in integration

* handle chain flag in integration

* handle chain flag in integration

* save

* save

* merge devel

* save

* noopWriter - one is enough

* chain spec parser

* chain spec parser

* embed

* embed

* embed

* embed

* embed

* embed

* embed

* clean

* clean

* correct alloc after reset state

* correct alloc after reset state

* correct alloc after reset state

* integration reset state now does re-apply genesis and chainConfig

* eips summary

* eips summary

* eips summary
2021-06-25 19:13:40 +01:00
Evgeny Danilenko
80c2fc6a0c
Remove stacked defers (#2149)
* rewrite everything

* remove stacked defers

* debug

* fix panic on nil tx

* use db.View

* panic

* block based progress

* errors

* - assume that batches are big  enough to not worry about saving carefully logTime
- use only 1 digit as progress indicator
- log only if processing > 16 blocks

* - update metric when printing logs

* remove excluded

Co-authored-by: alex.sharov <AskAlexSharov@gmail.com>
2021-06-23 10:30:53 +03:00
Alex Sharov
59d05dc5fe
hide file exists err (#2218) 2021-06-22 11:09:45 +01:00
Alex Sharov
2b59b45216
Do log tables size, db metrics - avoid concurrency, check stale readers hourly (#2216)
* add table size logs and metrics

* log stale readers

* - don't collect db metrics in background
- do check stale readers once an hour

* execution to update metrics when print logs

* hide file exists err

* hide file exists err
2021-06-22 11:08:47 +01:00
Artem Vorotnikov
989a8305f2
Print Mgas/second during execution (#2204) 2021-06-20 09:36:42 +03:00
Alex Sharov
4533b59724
flag to stop before stage (#2194) 2021-06-19 16:01:33 +07:00
Alex Sharov
bc271f92ce
To break dependency to db implementation - move all db classes to "ethdb/kv" and leave in "ethdb" only interfaces (#2195) 2021-06-19 15:21:53 +07:00
Alex Sharov
de24b427bf
save (#2196) 2021-06-19 13:32:35 +07:00
Alex Sharov
f63d12405a
Sender stage hangs (#2177)
* - add context for goroutines shutdown
- use 1 select for all channels to avoid deadlock

* - add context for goroutines shutdown
- use 1 select for all channels to avoid deadlock
- integration: senders to use right chainconfig
2021-06-16 14:04:44 +01:00
Alex Sharov
dcf850dd75
fix fieldalignment linter warnings (#2171) 2021-06-16 11:00:35 +07:00
Alex Sharov
d7f7445a5e
fix concurrent badHeaders map writes crush (#2175)
* fix concurrent map writes crush

* fix concurrent map writes crush
2021-06-16 10:58:45 +07:00
Alex Sharov
b160e30652
Send GetBlockHeaders immediately if TD of connected peer >= our TD (#2169)
* empty engine

* start sync from peer right after handshake if it's TD is higher

* fixCanonicalChain to print logs

* clean

* >
2021-06-15 13:43:55 +01:00