Commit Graph

491 Commits

Author SHA1 Message Date
Andrew Ashikhmin
dd43d486f3
Enable London in AllEthashProtocolChanges (#5891)
`AllEthashProtocolChanges` should contain all the EIPs accepted by the
core developers into the Ethash consensus, including the
[London](https://github.com/ethereum/execution-specs/blob/master/network-upgrades/mainnet-upgrades/london.md)
protocol upgrade.
2022-10-28 17:19:18 +02:00
Alex Sharov
8d1ed547b0
E3: parallel exec, apply on roTx (#5879) 2022-10-28 08:47:45 +07:00
Andrew Ashikhmin
64a3156112
Support BaseFee in AuRa headers (#5820)
BaseFee is required in AuRa headers when
[EIP-1559](https://eips.ethereum.org/EIPS/eip-1559) is activated.

Also:
- Basic AuRa header verification
- Extract some common RLP methods
- Tiny log clean-up
2022-10-21 12:43:44 +02:00
Alex Sharov
c6faa9fca3
e3: tests (#5776) 2022-10-18 11:53:54 +07:00
Alex Sharov
b909bfa581
e3 tests (#5774) 2022-10-18 11:08:14 +07:00
Alex Sharov
b8dbb53d3b
e3: write history and indices to etl (#5742) 2022-10-15 08:20:58 +07:00
ledgerwatch
aa18b70f6d
Not print commit cycle timing on newPayload cycle (#5711)
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2022-10-12 09:51:23 +01:00
Andrew Ashikhmin
7286a0fef7
Create in-memory MDBX inside dirs.Tmp (#5702)
Previously "in-memory" MDBX instances for fork validation and mining
were created inside `os.TempDir()`. We should create them inside
Erigon's datadir so that the file permissions and the disk are the same
as for the main database.

Prerequisite: https://github.com/ledgerwatch/erigon-lib/pull/676.
2022-10-11 16:49:38 +01:00
ledgerwatch
a170d730c0
Fixing issues related to sync delays (#5689)
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2022-10-11 08:04:40 +01:00
Alex Sharov
a2e51a2469
e3: prune limited amount before commit #675 (#5693) 2022-10-11 11:25:13 +07:00
hexoscott
c829c9f4f3
back to existing request bodies logic (#5650)
Moves bodies request logic to pre OOM changes. No logging or checking
for timeouts and moving forwards with every request made. Tested on a
local node that went through the DB migration on this branch and worked
fine, caught back up to the tip. Tested on POW initial sync and looked
to be working fine writing bodies, although didn't have time to see this
run all the way through the merge.
2022-10-06 20:27:06 +01:00
Alex Sharov
c48d51a582
snapshot index workers amount - based on available RAM and CPU (#5524) 2022-10-05 17:07:01 +07:00
ledgerwatch
94f4ea805d
Fixing hive SideChain reorg test (#5620)
the root cause is that when `inMemoryExecution` lambda gets created in
the `eth/backend.go`, it captures the reference of
`backend.notifications`, and so the execution of side-forks actually
adds notifications to there, and it all gets sent out to tx pool (and
RPC daemon) at the end of the stage loop (regardless of whether there
was forkchoice update or not)

so we can create a separate notification, but then somehow flush it to
the "main" nofitications when the in-memory exec state is flushed

Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
2022-10-05 05:42:38 +01:00
Andrew Ashikhmin
2217b2785e
SysCallContract shouldn't increase nonce of SystemAddress (#5617)
* Test GnosisGenesisStateRoot

* Delete obsolete allocations

* SysCallContract shouldn't increase nonce of SystemAddress

* Max gas limit in SysCallContract

* Restore error swallowing for Bor
2022-10-04 18:02:17 +02:00
ledgerwatch
fd52a788b7
Fix creation of block snapshots (#5579)
* Print snapshot prune

* More print

* Print

* Print

* Print

* Move snapshots stage forward

* Cleanup

* Fix tests

* Print

* Too much logging

* Remove print

* Log, check

* Revert

* No panic, print

* Fix tx numbering

* Harder condition to start retiring blocks

* Disable Pow verification after TTD is reached

* Fix POW verifying

* Print

* Prints

* Fix?

* cleanup

* Add migrations and hack

* More diagnostics

* More print

* Reset sequence only once

* Fix migration

* Remove print reset

* Fix lint

Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
2022-10-04 11:14:18 +01:00
hexoscott
b581bf30c0
Reintroduce oom fix (#5604)
* bring back oom fix for bodies with some new tweaks

* use in memory body cache when processing stages in memory
2022-10-04 10:44:23 +01:00
ledgerwatch
49aeb53988
Fail newPayload if execution is unsuccessful (#5553)
* Fail newPayload if execution is unsuccessful

* fix linter

* fix message

* no self-hosted

* try force ci

* back to unbuntu

* Remove unnecessary unwinds

* Fix canonicalising

* Quiet logs for in-memory exec

* Remove experimental overlay flag

* Fix sync test

* Fix test

* Fix lint

* Print hash in the end of the cycle

* Not notify headers if list is empty

* Supress timings and tables logs when no change in progress

* Reduce logging

* fix

* better log for pos download

* Better newPayload and forkChoice messages

* Fix lint

* simplify

* No duplication of download messages

* Reverse log for extension

Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
Co-authored-by: Igor Mandrigin <i@mandrigin.ru>
2022-09-29 06:38:13 +01:00
ledgerwatch
c094a2b960
Revert "OOM fix for bodies stage (#5253)" (#5525)
This reverts commit 7fc7b91270.

Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2022-09-26 15:27:38 +01:00
Alex Sharov
cb60382e6d
erigon3: rename "history.v2" to "history.v3" to avoid naming miss-match with "erigon3" (#5519) 2022-09-26 10:54:42 +07:00
hexoscott
7fc7b91270
OOM fix for bodies stage (#5253)
* OOM fix for bodies stage


change misleading bodies stage log messages


remove duplicate func to create key from block number


ensure body isn't nil when reading from bucket in bodies stage


remove unused blocknum variable from body requests


moving to using RLP encoding for stage bodies storage


encode bodies to RLP for stage bodies storage


better error handling in stage bodies


fixup body algos after rebase

* fixes for body stage oom after rebase
2022-09-22 12:27:42 +07:00
ledgerwatch
92c1b43259
Add test for CVE (#5450)
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
2022-09-21 12:27:46 +01:00
hexoscott
705673c336
increased logging around POS mining (#5442) 2022-09-20 13:15:56 +01:00
Andrew Ashikhmin
05df5a4739
Revert "Docker pos fixup attempt1 (#5401)" (#5421)
This reverts commit 43c848ceb9.
2022-09-19 16:13:20 +02:00
Alex Sharov
c1bb4bc734
exec22: stagedsync test v1 (#5425)
* save

* save
2022-09-19 12:17:36 +07:00
Alex Sharov
9fb8a190bc
erigon22: folder snapshots/history (#5351) 2022-09-18 17:41:01 +07:00
Andrew Ashikhmin
222224ca86
Log peer ID (#5416) 2022-09-18 11:33:18 +02:00
Giulio rebuffo
43c848ceb9
Docker pos fixup attempt1 (#5401)
* maybe fix

* maybe fix

* fix test sentry_mock

Co-authored-by: giuliorebuffo <giuliorebuffo@system76-pc.localdomain>
Co-authored-by: Igor Mandrigin <i@mandrigin.ru>
2022-09-17 11:49:13 +02:00
Andrew Ashikhmin
a8a104c35c
Merge & Downloader logging improvements (#5398)
* Prefix downloader logs with [Downloader]

* Better check for syncing

* Better handle nil dereference
2022-09-16 15:15:48 +02:00
Alex Sharov
4137c5df3d
don't append in in-memory execution (#5340) 2022-09-12 17:04:40 +07:00
Enrique Jose Avila Asapche
473ca51830
Adding back stage snapshots (#5331)
* added snapshots into stages list && deleted snapshots from defaul unwind

* added verkle trie

* using the same sentries client hd

* need to safe the stage progress of headers as well
2022-09-12 10:26:00 +07:00
Leonard Chinonso
7495986515
Reverting Adding snapshots as a separate stage commit (#5329)
* reverting Adding snapshots as a separate stage commit

* more fixes to merge conflicts
2022-09-10 19:05:18 +02:00
Alex Sharov
f6ca07e215
integration --workers flag (#5326) 2022-09-10 10:37:56 +07:00
Enrique Jose Avila Asapche
6d1d3a9f47
moved retiring of blocks from senders into snapshot stage (#5290) 2022-09-09 21:48:16 +07:00
hexoscott
ba6935ed03
fix for bodies stage looping infinitely when a block is mined locally (#5291) 2022-09-07 12:18:25 +07:00
Max Revitt
488121f669
fix(headers): signal cleanly shutdown headers and allow exit (#5286) 2022-09-06 08:02:24 +01:00
Alex Sharov
6bfd2c3472
erigon22: rpc getLogs and traceFilter (#5277) 2022-09-05 11:33:55 +07:00
Alex Sharov
7874921e73
erigon22: correct incarnation (#5275) 2022-09-05 10:31:17 +07:00
ledgerwatch
693017c554
Cleanup Tevm experimental code (#5259)
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2022-09-01 19:49:29 +01:00
Enrique Jose Avila Asapche
12331e018a
Fix bor txlookup (#5170) 2022-08-30 17:23:16 +03:00
Alex Sharov
5e441bfa2a
erigon22: recent history read (#5209) 2022-08-28 11:26:01 +07:00
Alex Sharov
16fc9c7277
erigon22: HistoryReader22 #5203 2022-08-27 15:36:42 +07:00
Alex Sharov
a0af80014c
erigon22: rename historyReader22 to historyReader23 (#5202) 2022-08-27 15:21:02 +07:00
Alex Sharov
d33096eaa7
erigon22: tests support (#5196) 2022-08-26 16:54:54 +07:00
Alex Sharov
69f3e1e99a
erigon22: step toward /tests 2022-08-25 15:32:05 +07:00
Alex Sharov
fb2294d124
Erigon22: basic txNum forward/unwind (#5176) 2022-08-25 12:24:01 +07:00
Andrew Ashikhmin
1ce144a988
Revert recent change to MiningStep (#5168) 2022-08-24 12:47:11 +02:00
Andrew Ashikhmin
b3d99f8e8c
Small cleanups (#5162) 2022-08-24 11:35:39 +02:00
Alex Sharov
16d02c8cc9
erigon22: unwind trie support (#5159) 2022-08-24 11:37:58 +07:00
Alex Sharov
c1214e4ac5
erigon22: incremental stage trie (#5116) 2022-08-19 13:23:23 +07:00
Alex Sharov
30324fbb81
erigon22: get acc index from aggregator22 (#5114) 2022-08-19 11:30:59 +07:00