Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged ledgerwatch/erigon v2.48.1 #51

Open
wants to merge 627 commits into
base: firehose-v2
Choose a base branch
from
Open

Conversation

ohmpatel1997
Copy link
Collaborator

  • merged the v2.48.1 version of ledgerwatch erigon

Giulio2002 and others added 30 commits May 12, 2023 00:47
New sepolia bootnodes managed by EF devops. Cherry pick
ethereum/go-ethereum#27099

Co-authored-by: Parithosh Jayanthi <parithosh@indenwolken.xyz>
Currently, the p2p ports require an explicit enumeration of ports to
pick. Sometimes, for instance when writing integration tests utilizing
an Erigon binary the particular p2p port does not matter and trying to
pick non-allocated port ranges is fragile.

This small PR simply checks to see if the enumerated port is '0', in
which case it disables the probing check which would otherwise cause
Erigon not to try binding to an ephemeral port.

Co-authored-by: Jason Yellick <jason@enya.ai>
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro-2.local>
Co-authored-by: Giulio <giulio.rebuffo@gmail.com>
It improves performance of initial sync (stage exec) by 5-20% when
blocks snapshots are mounted to high-latency drive and when chaindata is
on high-latency drive. And improving cold-start performance.

Current implementation using 2 goroutines for ReadAhead. It also
producing more garbage, can improve it later (here are dashboard with
impact).
```
mainnet2-1: with ReadAhead
mainnet2-3: no ReadAhead
```

<img width="949" alt="Screenshot 2023-05-12 at 09 24 31"
src="https://github.com/ledgerwatch/erigon/assets/46885206/b90b1fa8-9099-48ff-95b3-86e864a36d46">

<img width="845" alt="Screenshot 2023-05-12 at 09 24 13"
src="https://github.com/ledgerwatch/erigon/assets/46885206/39d90c0c-a9d5-4735-8c03-da1455b147aa">
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro-2.local>
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro-2.local>
deduplicate logic
create more producer goroutines (torrent lib does limiting internally
amount of consumers/disk-readers/hashers by 2, and it's enough because
we can verify multiple files in parallel)
move flag from "downloader torrent_hashes --verify" to "downloader
--verify"
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro-2.local>
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro-2.local>
moves eth2shuffle package to erigon.
…) (erigontech#7540)

Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro-2.local>
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro-2.local>
core/genesis_write.go Outdated Show resolved Hide resolved
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.