Commit Graph

463 Commits

Author SHA1 Message Date
Alex Sharov
de16cb9e23
add logs in recoverFromDb func (#2769) 2021-10-04 19:46:05 +07:00
Andrea Lanfranchi
f70dd63a30
Update stage_finish.go : notifications to rpc daemon (#2755) 2021-10-04 07:30:42 +07:00
Alex Sharov
d61a9ad073
Pool v2: --txpool.pricelimit support (#2763) 2021-10-02 17:34:57 +07:00
alex.sharov
fc44197f06 fix merge conflict 2021-09-29 14:48:19 +07:00
Alex Sharov
17abe11cc0
Remote RPC: add state cache (#2738) 2021-09-29 08:36:25 +07:00
e-danko
0c93c314d4
added Fermion network (#2737) 2021-09-29 08:35:43 +07:00
Nickolay Savchenko
d027d712eb
Json rpc eip1898 correctness (#2736) 2021-09-28 09:25:56 +07:00
e-danko
7d338f5e1c
#2660: added Kovan network (#2733) 2021-09-27 19:56:17 +07:00
Alex Sharov
3dcc226b8b
--mdbx.augment.limit (#2734) 2021-09-27 18:43:24 +07:00
Alex Sharov
a148e71d9d
Pool: switch to pendingBaseFee (#2732) 2021-09-26 23:09:36 +07:00
Alexandr Borodulin
d7159cd8bd
More convenient pruning for non-PoW consensus: add --prune.*.before flags (#2714) 2021-09-23 09:13:19 +07:00
Alex Sharov
0b776eead4
flag --txpool.v2 to enable --state.stream flag (#2718) 2021-09-22 15:39:51 +07:00
Alex Sharov
3de50637cd
remove changeset.Walk func (#2716) 2021-09-22 07:54:29 +07:00
Alex Sharov
b30ccd2ddf
Revert "Add prune before parameters" (#2701)
This reverts commit 49a98ad4b6.
2021-09-18 08:37:39 +07:00
Alexandr Borodulin
49a98ad4b6
Add prune before parameters 2021-09-17 19:01:15 +07:00
Alex Sharov
400c71b7ce
Pool: txID-based cache (#2697) 2021-09-17 10:31:20 +07:00
Alex Sharov
8b7b05fb1b
increase max jump in 1 tx from 1k to 8k 2021-09-16 21:09:14 +07:00
Alex Sharov
76dd448c70
Pool: switch cache to tx.ID(), add blockNum to tx info to drop from full pool old txs first (#2688) 2021-09-15 19:34:05 +07:00
Alex Sharov
77db993cfc
Pool: add coherent cache (#2678) 2021-09-13 14:58:25 +07:00
ledgerwatch
15b4095718
Move ETL to erigon-lib (#2667)
* Move ETL to erigon-lib

* Update link in the readme

* go mod tidy

* Use common/chan.go from erigon-lib

* Clean up

* Fix lint

* Fix test

* Fix compilation

Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
2021-09-12 08:50:17 +01:00
Alex Sharov
ed33b651cd
Print goroutines trace to STDOUT without app stop on SIGUSR1 (#2663) 2021-09-11 18:16:39 +07:00
Alex Sharov
3193f95152
Apply mined block (#2650) 2021-09-09 14:26:58 +07:00
Alex Sharov
0d79c19f21
clean ipc string (#2644) 2021-09-08 15:25:10 +07:00
Alex Sharov
2d8941a845
Pool: built-in v2 (#2643) 2021-09-08 12:31:51 +07:00
Alex Sharov
99317663f8
No open db in main, right clique sign, periodically release write tx on devnet (#2642) 2021-09-08 11:13:34 +07:00
Giulio rebuffo
b85c5f40e2
added senders pruning (#2634) 2021-09-08 08:38:58 +07:00
Alex Sharov
dd7f197db3
Devnet private key (#2639) 2021-09-07 16:12:49 +07:00
Uttam Singh
9c7913d44b
Added init sub-command (#2626) 2021-09-07 13:44:40 +07:00
alex.sharov
9f62fe702a txpool.v2 built-in 2021-09-07 10:07:36 +07:00
alex.sharov
db4e5bf2fa txpool.v2 built-in 2021-09-07 10:07:17 +07:00
Alex Sharov
4c1dbdf50e
Pool: add --txpool.v2 flag to erigon (it just disabling existing machinery for now) (#2620) 2021-09-02 17:04:30 +07:00
Alex Sharov
335ef966b3
better error message (#2621) 2021-09-02 16:03:38 +07:00
ledgerwatch
db7e143397
Pre verified hashes for main net and ropsten, fix for bad.block flag parsing (#2618)
* Extend preverified hashes for mainnet and ropsten

* Fix parsing of bad.block

Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2021-09-02 09:49:49 +01:00
racytech
fd357f034d
bad.hash flag added to exclude block by hash and not by number (#2612)
* BadHashFlag added

* bad.hash to bad.block
2021-09-01 22:16:25 +01:00
Zachinquarantine
5e713d6da6
Remove calaveras testnet (#2600)
* Remove calaveras

* Remove Calaveras testnet
2021-09-01 08:16:30 +07:00
Alex Sharov
f3021dd2af
RPC: small optimizations (#2564) 2021-08-24 08:28:58 +01:00
Egor Egorov
7b4f2bfbda
Expore --miner.sigkey cli parameter (#2568)
* Actually parse --miner.sigkey from commandline

* typo fix (--miner.miner → --miner)
2021-08-23 21:30:47 +07:00
Alex Sharov
abd2e2de2e
Sentry: clients can't slow down each-other, dedicated stream for sending headers (#2558) 2021-08-20 19:48:18 +07:00
Alex Sharov
b7ada2a595
create new Change object if incarnation increased (#2539)
* create new Change object if incarnation increased

* create new Change object if incarnation increased
2021-08-18 09:41:07 +07:00
ledgerwatch
adba9f0f18
Fewer allocations in trace stream (#2537)
* Fewer allocations in trace stream

* Better hex encoding

Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2021-08-17 20:50:52 +01:00
Alex Sharov
6c7edb0d34
state diff send to txpool (#2532) 2021-08-17 15:52:55 +07:00
Alex Sharov
c7c3a5932a
rename ReadBody to ReadBodyWithTransactions to make it obvious that it's heavier then just ReadBody (#2534)
* rename ReadBody to ReadBodyWithTransactions

* rename ReadBody to ReadBodyWithTransactions
2021-08-15 17:08:28 +07:00
Alex Sharov
5278ef4224
experimental: txpool cmd (#2530)
* save

* sentry handshake

* move sentry clients to erigon-lib

* move sentry clients to erigon-lib

* move sentry clients to erigon-lib

* move sentry clients to erigon-lib

* correct grpc retry

* correct grpc retry

* correct grpc retry

* save

* save

* save

* save
2021-08-14 20:47:11 +07:00
Alex Sharov
98e60b5b4b
Separate handshake from set_status - because txpool can't set any sentry status but need to handshake (#2529)
* sentry handshake

* move sentry clients to erigon-lib

* correct grpc retry

* correct grpc retry

* correct grpc retry
2021-08-14 15:11:46 +07:00
Alex Sharov
4f358fca88
Increase default private.api.ratelimit (#2521)
* increase default private.api.ratelimit

* increase default private.api.ratelimit
2021-08-13 16:51:59 +01:00
Evgeny Danilenko
4cd72c8328
Keep readonly value while changing interpreters back and forth (#2508)
* restore TEVM

* fuzzing and property based

* comment

* lint

* stack callback into defer ater checking an error

* sequential tests
2021-08-10 09:48:56 +07:00
ledgerwatch
350d7fe7a9
Adding support for vmTrace into trace_ routines (#2497)
* VmTrace

* Fixes to gasCall, beginning of vmTrace

* Fix opcode tracer

* Add mem and store, enable vmTrace for all methods

* Fix lint

* More nuances and debugging|

* More fixes

* Fix for trace_callMany

* Fix for trace_callMany

Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2021-08-08 13:28:03 +01:00
Richard Patel
7767b4df88
rpcdaemon: add txpool_status() (#2407)
perfecto
2021-08-06 09:45:44 +07:00
Alex Sharov
dc30b02c7b
Reduce default --blockDownloaderWindow (#2477) 2021-08-03 10:19:18 +07:00
Alex Sharov
5444e70038
allow to run stages once if --nodiscover (#2470) 2021-07-31 12:25:56 +07:00
Alex Sharov
3ed0f5c83d
better prune error message (#2475) 2021-07-31 12:24:20 +07:00
Alex Sharov
6bd44eb26c
move kv to erigon-lib (#2467) 2021-07-29 18:53:13 +07:00
Alex Sharov
69dc2776dc
MIT licensed metrics lib (#2462) 2021-07-29 17:27:46 +07:00
Alex Sharov
5069558752
Apache licensed logger (#2460) 2021-07-29 17:23:23 +07:00
Alex Sharov
75532ebfa4
remove (#2459) 2021-07-28 13:13:52 +07:00
Alex Sharov
21cb7befa4
finish remove bucket suffix (#2458) 2021-07-28 10:43:51 +07:00
Alex Sharov
838e5f9ef2
Move bucket constants into kv package, move kv interface to kv package (#2455) 2021-07-28 09:47:38 +07:00
Alex Sharov
63a6c45ef1
Remove some db interfaces (#2452) 2021-07-27 19:35:32 +07:00
Alex Sharov
054581f507
staged syncs automatically add error prefix about stage number and name (#2445) 2021-07-26 13:19:01 +07:00
Alex Sharov
6801208497
move some tests to kv interface (#2438) 2021-07-24 14:14:11 +07:00
Alex Sharov
a36a613e61
move migrations to kv interfaces (#2430) 2021-07-24 11:28:05 +07:00
Alex Sharov
f735997fa1
Sokol v0: remove unused parameters and methods (#2435) 2021-07-24 11:04:07 +07:00
ledgerwatch
8d01af710b
Fix compatibility of debug_traceTransaction (#2433)
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2021-07-23 22:37:54 +01: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
50ccb67d52
shorter flags (#2423) 2021-07-22 18:55:56 +07:00
Alex Sharov
d2552196ad
Sokol v0: support for first epoch-set transition (#2411) 2021-07-21 18:13:26 +07: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
031b0b177e
remove mutexes use (#2406) 2021-07-20 15:34:11 +07:00
Alex Sharov
d9c5ef3eb9
Pruning stages order support (#2393) 2021-07-18 15:59:05 +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
a79b3cd6eb
unify stage params (#2384) 2021-07-17 09:09:56 +07:00
Alex Sharov
9f6ef74adc
Linter: to check tx.Rollback() by ruleguard (#2383) 2021-07-16 20:23:54 +07:00
Alex Sharov
5f55b6b89c
Remove stage builder and use ID's in unwindOrder (#2381) 2021-07-16 20:17:40 +07:00
ledgerwatch
eb5402ee05
Add comments about anchorQueue (#2382)
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
2021-07-16 12:46:08 +01:00
Alex Sharov
8f0ce86ad0
set same timeout for call and trace (#2373) 2021-07-15 17:25:32 +07:00
Alex Sharov
c9e4e0bd3d
broadcast local txs (#2354) 2021-07-15 11:17:48 +07:00
Alex Sharov
04465e04df
increase read transactions limit to 32K (#2366) 2021-07-14 21:48:20 +07:00
ledgerwatch
22abc0068c
Preverified hashes update for mainnet and ropsten (#2365)
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2021-07-14 08:18:23 +01: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
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
188dfb14b8
txPool: propagate on peer connect (#2335) 2021-07-11 14:01:16 +07:00
Alex Sharov
e1c17e035a
rawdb.TxLookup - to return err, remove docs of rpcdaemon dual mode (#2340) 2021-07-11 12:25:21 +07:00
Alex Sharov
5eaf4c8cc3
rpc: 1559 in call and tracing (#2327) 2021-07-11 04:05:56 +00: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
Marin Ivanov
c89ec2047e
Add parameter for minimum time between sync loop iterations (#2332)
* Add parameter for minimum time between sync loop iterations

* Rename cli parameter --throttle.minLoopTime => --sync.loop.throttle
2021-07-10 09:19:44 +07:00
Alex Sharov
e5ea85005e
eth_call base_fee (#2319) 2021-07-09 00:04:31 +07:00
Alex Sharov
e98340d806
Simplify stagedsync.Prepare (#2317) 2021-07-08 20:52:22 +07:00
Alex Sharov
76bc954283
Sokol v0: can process 1-st block (#2310) 2021-07-08 19:40:43 +07:00
Alex Sharov
7c60cc0fee
step towards kv interface (#2313) 2021-07-08 09:56:09 +07:00
Alex Sharov
a78cb54132
step towards kv interface (#2311) 2021-07-07 23:15:49 +07:00
b00ris
57473175ff
Body snapshot (#2100)
* fix test

* get rid of ObjectDatabase

* sn_builder_prototype2

* save state

* save state

* integration step1

* fix lint

* fix

* fix test

* integrate migrator.finish

* fix lint

* fix build

* fix typo

* save state

* body snapshot test

* unique tx

* body snapshot generation using walk

* move methods out of test

* block data verification added

* fix lint

* test with remove works correctly

* fix lint

* remove experiment test

* fix test

* add comment

* add second layer of remove test

* rename test

* fix typos

* fix lint

* revert testdata

* body snapshot migration save state

* fix body snapshot migration

* fix after merge

* remove debug test

* debug windows build

* fix build

* fix

* fix lint

* debug

* fix

* fix windows build

* simplify snapshot management&&get rid of lazy tx

* fix lint

* fix windows path

* debug

* debug

* debug

* debug

* remove geometry experiments

* skip windows tests

* clean

* fix

* fix ;int
2021-07-06 23:33:26 +01:00
Alex Sharov
a68b5ba361
Replace ChainConfig.WithEIPsFlags by go-ethereum's ChainConfig.Rules (#2304)
* use chainRules

* use chainRules

* use chainRules

* use chainRules

* use chainRules
2021-07-05 19:52:50 +01:00
Alex Sharov
ba902f7ef3
separate_config_from_node_and_eth (#2289) 2021-07-04 08:50:32 +01:00
ledgerwatch
3f74cbf3a7
Update snapshot_builder_test.go (#2290) 2021-07-04 08:49:18 +01:00
Alex Sharov
4baad9f4b9
Sentry: better handshake (#2293) 2021-07-04 11:30:31 +07:00
ledgerwatch
f5e42b1e7a
Fixes in rpctest and rpcdaemon for debug_traceTransaction, and opcode tracer, tool for repairing broken receipts (#2284)
* Fixes in rpctest and rpcdaemon for debug_traceTransaction

* Fix for opcode tracer

* Tool to fix receipts

Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2021-07-03 14:34:23 +01:00
Alex Sharov
95756c8857
less objects (#2287) 2021-07-03 13:55:23 +01:00