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

goethereum dependency to v1.14~ #14351

Open
wants to merge 89 commits into
base: develop
Choose a base branch
from
Open

Conversation

james-prysm
Copy link
Contributor

@james-prysm james-prysm commented Aug 15, 2024

What type of PR is this?

Other

What does this PR do? Why is it needed?

Related blocked PRs

Which issues(s) does this PR fix?

Fixes #

Other notes for review

WORKSPACE Outdated Show resolved Hide resolved
@james-prysm james-prysm added Blocked Blocked by research or external factors Breaking Changes Breaking changes for a major release labels Sep 11, 2024
@james-prysm james-prysm removed the Blocked Blocked by research or external factors label Jan 6, 2025
CHANGELOG.md Outdated
@@ -38,6 +38,8 @@ The format is based on Keep a Changelog, and this project adheres to Semantic Ve
- Update our `go-libp2p-pubsub` dependency.
- Re-organize the content of files to ease the creation of a new fork boilerplate.
- Fixed Metadata errors for peers connected via QUIC.
- updated geth to 1.14 ~
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you capitalize the first letter for both the points

@@ -351,7 +348,6 @@ func Setup(ctx *cli.Context) error {
}

func startPProf(address string) {
http.Handle("/memsize/", http.StripPrefix("/memsize", &Memsize))
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should add a note in changelog that this has been removed, I think this would be considered a breaking change , correct @prestonvanloon ?

We can no longer access /memsize from the profiling port

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Probably! Why is this removed @james-prysm ?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I removed it here: 5193595

because of this: fjl/memsize#5 . With go 1.23, this would be broken. Geth has also removed it on their end:
ethereum/go-ethereum@e467577

Data: code,
})

// TODO: replace call with al, err := txfuzz.CreateAccessList(rpc, tx, sender) when txfuzz is fixed in new release
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why doesn't it work ?

testing/endtoend/endtoend_setup_test.go Outdated Show resolved Hide resolved
@@ -265,7 +265,7 @@ func SyncCommitteePeriodStartEpoch(e primitives.Epoch) (primitives.Epoch, error)
// given slot start time
func SecondsSinceSlotStart(s primitives.Slot, genesisTime, timeStamp uint64) (uint64, error) {
if timeStamp < genesisTime+uint64(s)*params.BeaconConfig().SecondsPerSlot {
return 0, errors.New("could not compute seconds since slot start: invalid timestamp")
return 0, fmt.Errorf("could not compute seconds since slot %d start: invalid timestamp, got %d < want %d", s, timeStamp, genesisTime+uint64(s)*params.BeaconConfig().SecondsPerSlot)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

genesisTime+uint64(s)*params.BeaconConfig().SecondsPerSlot

don't need to compute this twice

@@ -9,11 +9,11 @@ import (
)

func TestEndToEnd_MinimalConfig_WithBuilder(t *testing.T) {
r := e2eMinimal(t, types.InitForkCfg(version.Phase0, version.Deneb, params.E2ETestConfig()), types.WithCheckpointSync(), types.WithBuilder())
r := e2eMinimal(t, types.InitForkCfg(version.Capella, version.Deneb, params.E2ETestConfig()), types.WithCheckpointSync(), types.WithBuilder())
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why ?

testing/endtoend/endtoend_setup_test.go Outdated Show resolved Hide resolved
Comment on lines 142 to 144
// timeout while we wait for the eth1 client to sync
time.Sleep(10 * time.Second)

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is going to be brittle or prone to flakes. Can you poll until the client has synced with an appropriate timeout?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yes I'll try to do something more robust

testing/assertions/assertions.go Outdated Show resolved Hide resolved
@@ -351,7 +348,6 @@ func Setup(ctx *cli.Context) error {
}

func startPProf(address string) {
http.Handle("/memsize/", http.StripPrefix("/memsize", &Memsize))
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Probably! Why is this removed @james-prysm ?

config/proposer/loader/testdata/terence-proposer.json Outdated Show resolved Hide resolved
Comment on lines +143 to +145
// Allow bootnode's table to have its initial refresh. This allows
// inbound nodes to be added in.
time.Sleep(5 * time.Second)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please do not use time.Sleep. Can you poll len(bootListener.AllNodes()) > 1 (or whatever you need) with a reasonable timeout?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

right now no, there's nothing that exposes a state I can check against whether the listener's internal table is done initiating or not.
image
I'm reaching out to felix if this feature can be added to expose this or if I can open an issue or something and link it in this test.

@james-prysm james-prysm changed the title updating the goethereum dependency goethereum dependency to v1.14~ Jan 8, 2025
// - a peer
// - http server started
// - genesis synced
if err = helpers.WaitForTextInFile(errLog, "Node revalidated"); err != nil {
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This log is sort of akward, looking for suggestions on this. adding the check for p2p start or peer found is still too early starting the eth1 client, but using Post Merge check saying it requires a beacon node is too late and the evaluator fails due to missing slots 1 and 2

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Breaking Changes Breaking changes for a major release
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants