Andrew Ashikhmin
094ab5e77d
[EIP-4399] Remove newly added Header.Random (reuse mixHash instead) ( #3069 )
...
* [EIP-4399] Remove newly added Header.Random (reuse mixHash instead)
* add a TODO
* Update mock payload hashes
2021-12-01 13:41:31 +01:00
TBC Dev
36fabdb69c
Change eth.Peer.ID() type from string to enode.ID ( #3063 )
...
* Change eth.Peer.ID() type from string to enode.ID
* Misc enode.ID.String() usage
2021-11-30 22:55:51 +00:00
Dmitry Savelev
d4f6ceff1c
Add NodeInfo implementation ( #3046 )
...
* Add NodeInfo implementation
* replace magic value with a constant.
* update dependencies
* bump minor version
* add nodes deduplication logic.
* shuffle values in test cases a little.
2021-11-30 22:42:12 +00:00
Giulio rebuffo
d7ee2b1447
Merge pull request #2997 from ledgerwatch/enginev1
...
Added ExecutePayloadV1 to engine_ namespace [the merge]
2021-11-30 19:21:17 +01:00
TBC Dev
5eca3beea9
Avoid redundant BitLen() ( #3056 )
...
* Prefer uint256.IsZero() or big.Sign() for 0-testing over BitLen()
* Avoid redundant BitLen()
2021-11-29 22:35:51 +00:00
Giulio Rebuffo
e76bc807bb
better api
2021-11-29 15:47:08 +01:00
ledgerwatch
0e6e47e913
Create access list ( #3048 )
...
* Create access list
* CreateAccessList compiles
* fixes
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2021-11-29 09:28:35 +00:00
Giulio Rebuffo
5f31aef79e
fixed compilation
2021-11-29 10:07:40 +01:00
Giulio rebuffo
cfed35921c
Merge branch 'devel' into enginev1
2021-11-29 09:57:56 +01:00
TBC Dev
57d641b6f9
Avoid redundant Block.Header() deep-copy ( #3050 )
...
* Add separate Block.Nonce() and Block.NonceU64()
* Add Block.Seal()
* Avoid redundant Block.Header() deep-copy
* Add warning comment for Block.Header()
2021-11-29 08:52:36 +00:00
Alex Sharov
8104a90993
Snapshot: exec and trie to support snapshot files ( #3033 )
2021-11-29 10:43:19 +07:00
Giulio rebuffo
38548e28fb
Merge branch 'devel' into enginev1
2021-11-26 15:42:36 +01:00
ledgerwatch
6910e18e7f
[txpool] Introduce PriceBump, change tx replacement logic, add test ( #3039 )
...
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2021-11-26 14:39:26 +00:00
Giulio Rebuffo
768617f412
added proper errors
2021-11-24 23:19:40 +01:00
Giulio Rebuffo
435d1d1519
channels implemented
2021-11-24 23:00:00 +01:00
Alex Sharov
0ccae84583
remove block_fetcher and tx_fetcher ( #3024 )
2021-11-23 07:12:56 +00:00
Alex Sharov
6d24a30a01
Drop txpool v1 ( #3017 )
...
* drop_txpool_v1
* drop_txpool_v1
Co-authored-by: Alex Sharp <alexsharp@alexs-macbook-pro.home>
2021-11-22 18:38:51 +00:00
Giulio Rebuffo
af4caf4459
fixed compilation
2021-11-22 16:17:01 +01:00
Giulio Rebuffo
bac85f854b
added getPayloadV1
2021-11-22 16:12:34 +01:00
TBC Dev
e1c44cd19b
Change sentry peer_id from H512 pubkey to H256 keccak256(pubkey) ( #3013 )
...
* Rename protoHandshake.ID to protoHandshake.Pubkey
* Fix enode.ID comment descriptions
* Change sentry peer_id from H512 pubkey to H256 keccak256(pubkey)
* Simplify PeerInfo helpers
2021-11-22 05:39:31 +00:00
Giulio Rebuffo
1267d540b1
added engine_executePayloadV1
2021-11-21 22:47:33 +01:00
Giulio Rebuffo
23883d9104
merge
2021-11-21 21:55:41 +01:00
Giulio Rebuffo
4eb650fb0c
payload manipulation
2021-11-21 21:52:36 +01:00
ledgerwatch
b073787f1d
eth_getTransactionReceipt not to return unrelated txs ( #2998 )
...
* Cleanup
* Restore
* Fix for existing tx
* Cleanup
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
2021-11-21 09:22:29 +00:00
Alex Sharov
e55256296b
snapshots: read block from snapshots, add sender to txs file ( #2996 )
2021-11-21 10:32:14 +07:00
Giulio Rebuffo
6dd2d67121
Added ExecutePayloadV1 method to engine_ namespace
2021-11-20 22:53:03 +01:00
Giulio Rebuffo
224441cb07
initial commit2
2021-11-20 17:27:11 +01:00
Alex Sharov
5b634a790e
Canonical tx ids ( #2986 )
...
* save
* save
* save
* save
* save
* save
* save
* save
* save
* save
* save
* save
* save
* save
* save
* save
* save
* save
* save
* save
* save
* save
* save
* save
* save
* save
* save
* save
* save
* save
* save
* save
* save
* save
* save
* save
* save
* save
2021-11-18 14:07:55 +00:00
Giulio rebuffo
e6916d4d00
[EIP-4399 2/3] Added total difficulty stage and transition logic ( #2964 )
...
* added diff stage
* added td stage
* improvements + more tests
* added err check
* added err check
* transition raw interfaces
* interface for transition
* unwind updates
* maybe this fix
* now fixed?
* fixes
* better db-format
* better db-format
* sum and mod
* sum and mod
* fixed headers unwind
2021-11-17 15:50:41 +00:00
Alex Sharov
861ef7a6c1
Open blocks snapshots ( #2957 )
2021-11-16 15:33:41 +07:00
Alex Sharov
aad0d0c777
grpc GetBlock api ( #2955 )
2021-11-14 11:08:52 +07:00
Alex Sharov
95c0e45cfa
Check existence before write - because WriteRawBody isn't idempotent (it allocates new sequence range for transactions on every call) ( #2941 )
2021-11-11 10:17:33 +07:00
Giulio Rebuffo
e4ab9b6793
lint
2021-11-09 20:40:48 +01:00
Giulio Rebuffo
02d3c697d1
removed eth64/65 tests
2021-11-07 22:16:49 +01:00
Giulio Rebuffo
f34ccb75e5
refactor downloader
2021-11-07 20:25:37 +01:00
Andrei Ivasko
65400b241f
HashState stage genesis sync - read PlainState only once ( #2884 )
2021-11-06 16:37:33 +07:00
alex.sharov
5d0f081a9c
save
2021-11-04 15:45:55 +07:00
Alex Sharov
702631bf6f
prohibit change prune mode ( #2908 )
2021-11-03 20:05:52 +07:00
ledgerwatch
9aea0bba81
Revert "Correct initial sync in no p2p discovery mode ( #2877 )" ( #2881 )
...
This reverts commit 810c004d65
.
2021-10-28 08:55:02 +01:00
Alex Sharov
84da57f62c
revert run only stage.Headers at first cycle ( #2879 )
2021-10-28 10:13:00 +07:00
ledgerwatch
810c004d65
Correct initial sync in no p2p discovery mode ( #2877 )
...
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2021-10-27 18:47:51 +01:00
Alex Sharov
5d7904c133
erl.collector - move logPrefix to constructor ( #2866 )
2021-10-25 15:09:43 +07:00
alex.sharov
9c6a552a1e
save
2021-10-22 08:41:16 +07:00
Alex Sharov
a28a0b7744
PoolV2: set default limit to sub-pools 10K ( #2855 )
2021-10-21 15:59:39 +07:00
Alex Sharov
a4d314719b
all chains to start txpool in same time ( #2854 )
2021-10-21 15:24:35 +07:00
ledgerwatch
1cbde9a5ef
More robust preverification of headers and remove kludge for header download ( #2833 )
...
* Update header_algos.go
* Update stage_headers.go
* Update header_algos.go
2021-10-17 19:13:34 +01:00
Alex Sharov
a470da8c2c
enable London in mining, fix pre-london gasPool in mining ( #2821 )
2021-10-13 11:04:59 +07:00
e-danko
19b7354a1d
#2658 : eliminated HeadersSeal function ( #2731 )
...
* #2658 : removed using HeadersSeal function from experiments module
* #2658 : lint issues
* #2658 : fix typo
2021-10-13 08:31:04 +07:00
Alex Sharov
da00e949c4
RemoteRPC: coherentCache for kv.Code; LocalRPC: enable small blocksLRU ( #2815 )
2021-10-12 12:04:04 +07:00
Alex Sharov
2d64584d4f
Better prune logs ( #2812 )
2021-10-11 11:58:57 +07:00
Alex Sharov
bd099e4e3e
Run first cycle in one db transaction if it's small enough ( #2809 )
2021-10-10 19:00:13 +07:00
Eugene
177aff8260
fix eth_subscribe ( #2801 )
2021-10-09 08:39:40 +07:00
Alex Sharov
5ca558c667
Move lengths to erigon-lib other packages depend on it ( #2799 )
...
* move lengths to erigon-lib
* move lengths to erigon-lib
2021-10-08 10:20:45 +07:00
Alex Sharov
54cdf74394
Rpcdaemon: add --tevm flag to enable experiment ( #2788 )
2021-10-06 16:09:47 +07:00
Alex Sharov
a6a63e8b0e
Integration to print right stage in logs ( #2785 )
2021-10-06 14:02:50 +07:00
alex.sharov
ff00efa911
reduce_bach_concurrency_default
2021-10-06 13:10:46 +07:00
Alex Sharov
21785780bf
IntermediateHash stage - switch from incremental to re-generate mode - if jump > 100K blocks ( #2781 )
2021-10-05 15:32:18 +07:00
Enrique Jose Avila Asapche
3c0cb82454
Decoding incarnation implemented ( #2764 )
...
* WIP decoding incarnation specifically
* Changed decodeIncarnation to be an external function
* added tests to for decoding incarnations
* ran gofmt -w -s
* changed test name, and changed incarnations to 4
* Created a test which tests if it returns an error when there is one
* ran gofmt
* Capitalized all tests and made breaking test
* added an error check
* changed decodingForStorage for decodingIncarnationFromStorage
* ran gofmt -w -s
2021-10-05 08:14:57 +07:00
Andrea Lanfranchi
3bc3be4b5f
Clean up DEBUG category logs ( #2776 )
...
- move many DEBUG logs into TRACE category
2021-10-05 08:14:04 +07:00
Andrea Lanfranchi
c913f35c2e
Inner errors ( #2774 )
2021-10-04 22:16:52 +07:00
Alex Sharov
044aa6748c
eip 1559 in miner ( #2773 )
2021-10-04 19:47:52 +07:00
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
83555c2255
Pool v2: --txpool.accountslots flag support ( #2765 )
2021-10-03 13:27:37 +07:00
Alex Sharov
d61a9ad073
Pool v2: --txpool.pricelimit support ( #2763 )
2021-10-02 17:34:57 +07:00
Andrea Lanfranchi
859a4fca3e
Wrong notifyFrom value in NotifyNewHeaders ( #2750 )
...
* Wrong notifyFrom value
* Move log.info line after possible error
* Better wording
2021-09-30 21:40:37 +07:00
alex.sharov
fc44197f06
fix merge conflict
2021-09-29 14:48:19 +07:00
e-danko
7d338f5e1c
#2660 : added Kovan network ( #2733 )
2021-09-27 19:56:17 +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
a0321e2f3a
Pool: return lost error, fix race of 2 sentries, more friendly logs ( #2707 )
2021-09-20 20:16:50 +07:00
Alex Sharov
1f8937fdd1
Pool: discard reasons, lru, start pool even if no --mine flag ( #2704 )
2021-09-20 13:20:50 +07:00
ledgerwatch
836d7e07f9
Recreate bitmap in call traces ( #2700 )
...
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2021-09-18 22:41:27 +01:00
Alex Sharov
8d9e058eb7
Pool: chain config, non-mainnet ( #2702 )
2021-09-18 20:58:23 +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
165fe1696f
Pool: readme ( #2699 )
2021-09-17 18:21:21 +07:00
Alex Sharov
400c71b7ce
Pool: txID-based cache ( #2697 )
2021-09-17 10:31:20 +07:00
e-danko
70ff9bb0bb
#2371 : added saving Erigon version in database ( #2683 )
2021-09-15 20:44:22 +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
ad1682cf40
Expose mdbx's txID to remote_kv ( #2686 )
2021-09-15 14:22:57 +07:00
Alex Sharov
ec14cba611
Remote Pool: add mining rpc, test pending txs stream ( #2685 )
2021-09-15 09:09:19 +07:00
Alex Sharov
77db993cfc
Pool: add coherent cache ( #2678 )
2021-09-13 14:58:25 +07:00
Alex Sharp
16a02d0987
Merge branch 'more-generalised-pruneReceipts' of https://github.com/enriavil1/erigon into enriavil1-more-generalised-pruneReceipts
2021-09-12 10:20:39 +01:00
Giulio rebuffo
e0c14c9a25
Update stage_execute.go
2021-09-12 10:16:53 +02: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
Giulio rebuffo
3354a29eb9
Update stage_execute.go
2021-09-12 09:48:41 +02:00
Giulio rebuffo
4fb89ad735
Update stage.go
2021-09-12 09:47:53 +02:00
Enrique Avila Asapche
1eefb72934
'ran gofmt -w -s .
to format'
2021-09-11 17:41:29 +03:00
Alex Sharov
ed33b651cd
Print goroutines trace to STDOUT without app stop on SIGUSR1 ( #2663 )
2021-09-11 18:16:39 +07:00
Enrique Avila Asapche
1786e44269
fixed bug in stages to refactor the code into two reusable functions PruneTableMultiCursor and PruneTable
2021-09-11 13:09:18 +03:00
Enrique Avila Asapche
d14b894f07
deleted kv.log section and instead call it in cfg.prune.Receipts.Enabled
2021-09-10 15:59:22 +03:00
Alex Sharov
71ec0938b5
fix wrong order of constructor ( #2657 )
2021-09-10 10:06:23 +07:00
Enrique Avila Asapche
20f10ca95a
Added identifier instead of kv.Receipts
2021-09-09 18:58:34 +03:00
Alex Sharov
3193f95152
Apply mined block ( #2650 )
2021-09-09 14:26:58 +07:00
jt9897253
b958d49587
Fix typo ( #2648 )
...
Change `Preload headedrs` to `Preload headers`
2021-09-09 08:50:42 +07:00
Alex Sharov
798c2d64a4
Pool: no state presistance ( #2646 )
2021-09-08 19:33:14 +07:00
alex.sharov
bd017a06d4
save
2021-09-08 16:17:52 +07:00
Alex Sharov
fd69b509a5
Senders prune logging ( #2645 )
2021-09-08 16:11:05 +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
Alex Sharov
28480a36ec
Pool: add --txpool.v2 flag to rpcdaemon ( #2624 )
2021-09-03 11:19:35 +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
ledgerwatch
12cbf4d6fa
Ropsten to find correct chain ( #2614 )
...
* Ropsten to find correct chain
* Cleanup and compile fix
* Compile fix
* Print duration of the unwind, not the timestamp
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2021-09-01 22:21:57 +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
Alex Sharov
edb83d1ed9
Roaring bitmap lib version up ( #2606 )
2021-09-01 12:09:04 +07:00
ligi
d798d239f6
Fix typos ( #2602 )
2021-08-31 14:50:39 +07:00
Alex Sharov
017b460b99
CallTraces prune to use ETL ( #2592 )
2021-08-30 09:13:30 +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
f5c6def4bc
close db ( #2548 )
2021-08-18 15:50:22 +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
Alex Sharov
5e6549ac7d
Better logs prune ( #2543 )
...
* prune log prefix
* prune log prefix
2021-08-17 18:51:08 +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
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
f01a71a696
feehistory fix types to be compatible with spec ( #2518 )
2021-08-13 10:47:43 +07: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
65a9a265c2
Prevent frequent commits to the node DB in sentries ( #2505 )
...
* Prevent frequent commits to the node DB in sentries
* Commit when btree goes over limit
* iterator for SeedQuery
* Fixing test
* Fix tests
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2021-08-09 09:52:42 +01: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
Alex Sharov
b666c67ea0
Remove concurrency from fee history and support request cancelation ( #2504 )
...
* remove fee history concurrency
* remove fee history concurrency
* add concext cancel support
2021-08-08 19:15:22 +07:00
Alex Sharov
6bf34b5cb8
RPC: eth_feeHistory ( #2501 )
...
* eth_FeeHistory
* eth_FeeHistory
* eth_FeeHistory
* lint
* lint
2021-08-08 14:27:47 +07:00
Alex Sharov
29380e4b46
parse dynFee tx corner case ( #2500 )
...
* parse dyn fee tx error
* parse dyn fee tx error
* lint
2021-08-08 14:27:34 +07:00
Alex Sharov
72e9660b74
RPC: eth_MaxPriorityFeePerGas ( #2498 )
2021-08-08 09:18:41 +07:00
alex.sharov
62c026e25a
fix txpool key
2021-08-07 14:34:36 +07:00
alex.sharov
2c45a561f5
simplify logs
2021-08-07 14:07:59 +07:00
Alex Sharov
b718e46c0a
Grafana to show all stages progress, less spooky logs, no runtime logPrefix calculation ( #2493 )
...
* better logs, label-based metrics
* no runtime log prefix calculation
* clean
* dashboard to show all stages metrics
2021-08-07 11:11:45 +07:00
The-Coomer
c46540f56f
Update README to list all current 18 stages ( #2486 )
2021-08-04 10:33:37 +07:00
canepat
38a31cecb7
RPCDaemon: eth_gasPrice add baseFee if any to suggested gas price ( #2484 )
...
* Avoid decreasing gasFeeCap at each GetEffectiveGasTip call
Add baseFee if any to suggested gas price
* Move add before GPO caching
2021-08-03 11:48:09 +07:00
Alex Sharov
aeb2426b8c
etl call traces ( #2481 )
2021-08-02 11:26:42 +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
286572e99f
Remove some unused code related to metrics ( #2469 )
2021-07-29 22:37:48 +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
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
ec49dc786e
truncate timings in logs ( #2451 )
2021-07-27 09:50:57 +07:00
Alex Sharov
733991018b
port active precompiles activation ( #2448 )
2021-07-27 09:39:41 +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
12c578b84d
less alloc at hash state key transformation #2441 ( #2441 )
2021-07-24 18:14:10 +07:00
Alex Sharov
6bf54c951a
Sokol v0: unwind support ( #2439 )
2021-07-24 16:50:42 +07:00
Alex Sharov
6801208497
move some tests to kv interface ( #2438 )
2021-07-24 14:14:11 +07:00
Alex Sharov
d58752f67d
RPC: eip1559 in getTxByHash ( #2436 )
2021-07-24 11:55:32 +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
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
Artem Vorotnikov
0026cb8faa
Remove checkpoints ( #2402 )
...
* Remove checkpoints
* Remove more dead flags
2021-07-20 09:11:42 +07: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
Artem Vorotnikov
a49b920659
Remove preimages ( #2370 )
2021-07-15 09:06:07 +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
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
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
a78cb54132
step towards kv interface ( #2311 )
2021-07-07 23:15:49 +07: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
9683b26483
remove ctx from state writer interface ( #2302 )
2021-07-05 15:42:44 +07:00
Alex Sharov
afd8674c4b
Peer log ( #2294 )
...
* Revert "Revert "better handshake""
This reverts commit 4141c54c95
.
* better peers logs
* better peers logs
2021-07-04 08:51:08 +01:00
Alex Sharov
ba902f7ef3
separate_config_from_node_and_eth ( #2289 )
2021-07-04 08:50:32 +01: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
ledgerwatch
a05d1be531
Pull grpc bindings into erigon-lib ( #2265 )
...
* Pull grpc bindings into erigon-lib
* Remove mdbx dist
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2021-07-01 22:31:14 +01:00
Mark Tyneway
17adaf5f87
config: add block downloader window flag ( #2259 )
2021-07-01 10:14:10 +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
24a76a002d
correct iterate over items when goroutine inside loop ( #2219 )
2021-06-22 14:33:22 +01: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
mempirate
ca926ce94d
net_peerCount for remote sentries ( #2192 )
...
* net_peerCount for remote sentries
* cleanup
* Simplify NetPeerCount using SentryClient
* Refactor id -> count
2021-06-18 14:34:15 +01:00
mempirate
e51b09da0d
Implements net_peerCount RPC call for internal sentries ( #2172 )
...
* Implement API and protobuf
* Squashed 'interfaces/' content from commit cd3eca28e
git-subtree-dir: interfaces
git-subtree-split: cd3eca28e50367af9de52fca863b1d7528bff774
* Implement net_peerCount RPC call
* Squashed 'interfaces/' content from commit cd3eca28e
git-subtree-dir: interfaces
git-subtree-split: cd3eca28e50367af9de52fca863b1d7528bff774
* Fixing merge conflicts
* Remove p2p.Server from Ethereum backend
* Fix peerCount calculation for internal sentries
* Bump eth backend API version
* Update rpcdaemon README
* Document version change
2021-06-17 22:55:20 +01: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
Artem Vorotnikov
af836a6200
Nuke LMDB ( #2167 )
2021-06-16 13:57:58 +03: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
BitBaseBit
159777db29
Changed gas price oracle to use effective tip and ignoreUnder parameter for 1559. ( #2173 )
...
* added temp file in crashreports because git is stupid and wont add empty folders
* implemented ignoreUnder + EffectiveGas for legacy and dynamic txs
* implemented changes to gas price oracle for 1559
* switched Cmp to Lt/Gt
2021-06-15 21:45:34 +01:00
Artem Vorotnikov
9a8c0f9669
Always enable eth65 ( #2166 )
...
* Always enable eth65
* Add ListenAddr65 to defaults
2021-06-15 17:57:26 +01: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
Artem Vorotnikov
0a4e0d1fa1
Various code simplificaitons ( #2165 )
...
* simplify randomaccount
* simplify execution unwind
* Remove standalone account accessors
2021-06-14 19:52:30 +01:00
ledgerwatch
2c1fe2a3a7
Restore TD records ( #2164 )
...
* Insert missing TD values
* Print missing TD records
* Fix typo
* Apply fix
* Fixes in execution stage
* Fix tx/sec output
* Advance exec
* Reset unwind
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2021-06-14 19:51:57 +01:00
ledgerwatch
c4cfd84b6d
Not to remove TD records on failed blocks ( #2155 )
...
* Not to remove TD records on failed blocks
* Commit tx when stopped
* Not to mess up stageloop commits
* Stop
* Fix header unwinds
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
2021-06-13 21:48:40 +01:00
BitBaseBit
7ed337cdcc
Implemented panic handling, graceful shutdown and reporting for all goroutines that don't explicitly handle them. ( #2153 )
...
* implemented crash reporting for all goroutine panics that aren't handled explicitly
* implemented crash reporting for all goroutine panics that aren't handled explicitly
* changed node defaults back to originals after testing
* implemented panic handling for all goroutines that don't explicitly handle them, outputting the stack trace to a file in crashreports
* handling panics on all goroutines gracefully
* updated missing call
* error assignment
* implemented suggestions
* path.Join added
* implemented Evgeny's suggestions
* changed path.Join to filepath.Join for cross-platform
* added err check
* updated RecoverStackTrace to LogPanic
* updated closures
* removed call of common.Go to some goroutines
* updated scope capture
* removed testing files
* reverted back to original method, I feel like its less intrusive
* update filename for clarity
2021-06-13 17:41:39 +01:00
ledgerwatch
e29e76988b
Update backend.go ( #2152 )
2021-06-12 14:58:44 +01:00
ledgerwatch
b5edbe272f
Update stage_tevm.go ( #2144 )
2021-06-11 10:11:23 +01:00
Alex Sharov
7b08a3b138
tevm_open_cursor_after_commit ( #2141 )
2021-06-11 09:35:00 +01:00
Alex Sharov
ba56e7a139
extract p2p config out of sentry ( #2126 )
...
* extract p2p config out of sentry
* extract p2p config out of sentry
* extract p2p config out of sentry
* rebase devel
* rebase devel
* add bootnodes to sentry
* add bootnodes to sentry
2021-06-11 09:34:37 +01:00
Evgeny Danilenko
de26634d8d
TEVM status pruning ( #2034 )
...
* use trace for TEVM status
* restore testdata
* fix getting contract from plain state
* unwind
* linters
* reproducible build debug
* debug
* debug
* remove debug
2021-06-11 09:34:25 +01:00
Andrew Ashikhmin
d848685c8e
More tests for Intermediate Hashes: storage, extension node exclusion ( #2128 )
...
* Test trie_storage layout as well
* FromHex instead of Hex2Bytes
* TestAccountTrieAroundExtensionNode
* Expand TestAccountTrieAroundExtensionNode
2021-06-10 09:19:57 +01:00
Alex Sharov
77aba80d8b
fix p2p nodeName ( #2129 )
2021-06-10 08:53:06 +07:00
ledgerwatch
657a8b13df
Do not remove headers when unwinding ( #2122 )
...
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
2021-06-08 16:16:27 +01:00
Alex Sharov
338fc0df26
move snapshot config to constructor ( #2121 )
2021-06-08 09:43:41 +07:00
ledgerwatch
c2c63a3715
Clean up DefaultStages ( #2114 )
...
* Clean up DefaultStages
* Fix compile
* Fix compile
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2021-06-07 12:00:16 +01:00
ledgerwatch
73bb98f686
Move tests 6 ( #2107 )
...
* Move tests 6
* Compile fixes
* Fix lint
* Compile fixes
* Fix compile
* compile fixes
* Compile fix
* Fix consesus/clique
* Cleanup
* Add gas limit
* Print
* Prints
* More print
* Fix
* Reinstate TestGetBlockReceipts66
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2021-06-06 22:44:14 +01:00
Alex Sharov
35fd972a9e
move sync.Run() to kv ( #2112 )
...
* less objdb in tests
* move sync.Run to tx
* move
* move
* move
2021-06-06 10:32:55 +01:00
Artem Vorotnikov
231a130e2d
Remove remnants of silkworm integration ( #2110 )
2021-06-06 09:06:06 +01:00
Alex Sharov
5ba3ea162a
Simulated backend and genesis to kv ( #2104 )
...
* move to kv
* move to kv
* move to kv
* move to kv
* move to kv
* move to kv
* merge
* merge
* merge
* merge
* merge
* merge
* merge
* merge
2021-06-05 16:17:04 +01:00
ledgerwatch
f7fc4d66ec
Move tests 5 ( #2069 )
...
* Remove silkworm and reader builders
* Switch tests
* Stop from hanging
* Update tests to 9.0.0
* Move tests back
* Moving code around
* Fix lint
* More fixes
* Intermediate
* Fix compile
* Fix compile errors
* Compile errors
* Fix lint
* Comment out more printing
* More simplifications
* Compile fixes
* Compile fix
* More replacements
* More fixes
* More muddling through
* lint
* Exclude dao split test
* Restore sidechains after unwind
* Errors in senders stage, stopped in bodies stage
* Fix compile
* Fix compile
* Fix tests
* More fixes
* More fixes
* Code cleanup
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
Co-authored-by: alex.sharov <AskAlexSharov@gmail.com>
2021-06-05 11:00:21 +01:00
Alex Sharov
1f13f73045
up version of uint256 lib ( #2082 )
...
* eip 1559_tx_constraints
* eip 1559_tx_constraints
* return error on uint256 overflow
* up uint256 version
* merge master
* fix master
Co-authored-by: ledgerwatch <akhounov@gmail.com>
2021-06-04 17:25:28 +01:00
Alex Sharov
eee871aedf
Add db label (later will add txpool db) ( #2081 )
...
* add db label - later will add txpool db
* move commit marker to kv_mdbx behind Chain label
* Update migrations.go
* clean
Co-authored-by: ledgerwatch <akhounov@gmail.com>
2021-06-04 15:56:49 +01:00
Alex Sharov
70a404fe2e
fix master ( #2098 )
2021-06-04 21:12:29 +07:00
Alex Sharov
7cd8046c35
Enable p2p receipts ( #2080 )
...
* enable receipts
* enable receipts
* return error on uint256 overflow
* wait for subscription
Co-authored-by: ledgerwatch <akhounov@gmail.com>
2021-06-04 14:33:10 +01:00
Alex Sharov
ccac3c6566
Add tx.Append method for ergonomic ( #2088 )
...
* close cursor
* stateless append
* stateless append
* faster pruning del and close cursor
* faster pruning del and close cursor
* less wrappers
* less wrappers
* less wrappers
* clean
Co-authored-by: ledgerwatch <akhounov@gmail.com>
2021-06-04 14:32:48 +01:00
b00ris
66c7c669fb
Snapshot builder simplification ( #2064 )
...
* 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
* fix
2021-06-04 13:30:02 +01:00
Alex Sharov
38ba14a92a
faster pruning del and close cursor ( #2087 )
2021-06-04 13:26:26 +01:00
Artem Vorotnikov
3a86048af6
Remove block number from PlainStateWriter ( #2091 )
2021-06-04 11:13:19 +03:00
ledgerwatch
67d0a2d3ab
Reproduce and fix trace_filter index problem ( #2084 )
...
* Intermediate
* Test for trace_filter
* Clean up
* Clean up
* clean up
* More to the test
* Hack
* Block parameter
* Block parameter
* use mdbx
* Print number of records
* Print keys
* Print index records
* Print block numbers
* Print values in tracecallset
* Print some more
* More printing
* Print froms and tos
* Print startBlock and endBlock
* Tests and fixes
* Cleanup
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2021-06-04 09:09:57 +01:00
Alex Sharov
759af6a15d
cli param to enable eth65 and counfigure it's port ( #2075 )
...
* cli param to enable eth65
* save
* save
2021-06-02 08:43:24 +01:00
Andrew Ashikhmin
4ecd6e07ca
[Fix doc] Compute State Root Stage follows Hashed State Stage, not the other way round ( #2073 )
2021-06-01 19:12:10 +01:00
Alex Sharov
29fa1aa35a
sentry join streams ( #2059 )
2021-06-01 17:41:10 +07:00
ledgerwatch
26904a1851
Remove silkworm and reader builders ( #2068 )
...
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
2021-05-31 18:13:10 +01:00
Alex Sharov
a6dfafd5cd
rename headers to sentry ( #2060 )
2021-05-31 17:20:56 +07:00