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

[Configuration Changes] Execution service 3: initial execution-node, interface+implementation #1537

Merged
merged 41 commits into from
Oct 4, 2023

Conversation

tsahee
Copy link
Contributor

@tsahee tsahee commented Mar 24, 2023

Create (non-async) API for execution client, execution node creates relevant members.
Arbnode still manages execution node, mostly to simplify changes to tests.

pulls in: OffchainLabs/go-ethereum#238

@cla-bot cla-bot bot added the s Automatically added by the CLA bot if the creator of a PR is registered as having signed the CLA. label Mar 24, 2023
@tsahee tsahee marked this pull request as draft April 25, 2023 00:50
Base automatically changed from execution-separate-over-valiation to master July 10, 2023 20:40
tsahee added 4 commits July 10, 2023 16:17
 Conflicts:
	arbnode/execution/node.go
	arbnode/maintenance.go
	arbnode/node.go
	cmd/nitro/init.go
	cmd/nitro/nitro.go
	execution/gethexec/sequencer.go
	go-ethereum
	system_tests/arbtrace_test.go
	system_tests/batch_poster_test.go
	system_tests/common_test.go
	system_tests/das_test.go
	system_tests/forwarder_test.go
	system_tests/seq_coordinator_test.go
	system_tests/seqfeed_test.go
	system_tests/staker_test.go
@tsahee tsahee marked this pull request as ready for review September 27, 2023 00:07
@PlasmaPower PlasmaPower changed the title Execution service 3: initial execution-node, interface+implementation [Configuration Changes] Execution service 3: initial execution-node, interface+implementation Sep 27, 2023
Copy link
Collaborator

@PlasmaPower PlasmaPower left a comment

Choose a reason for hiding this comment

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

I haven't reviewed most of the system_tests yet, but here are my comments on everything else. I don't expect to have as much (if any) on the system_tests

execClient = nil
}
if execClient != nil {
err := execClient.Initialize(ctx, n, n.SyncMonitor)
Copy link
Collaborator

Choose a reason for hiding this comment

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

Could we add Initialize and Start to the interface, or is the SyncMonitor the issue? As-is I'm a bit worried that we might miss this in a refactor and we'd forget to Initialize it.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I don't want to add Initialize to the interface - this is very specific for the gethexec node and would e.g. be very different for a n execution RPC client.
Added Start and StopAndWait, where any client could have a reasonable implementation for these two functions.

arbnode/node.go Outdated Show resolved Hide resolved
arbnode/node.go Outdated Show resolved Hide resolved
arbnode/seq_coordinator.go Outdated Show resolved Hide resolved
arbnode/sync_monitor.go Show resolved Hide resolved
cmd/nitro/nitro.go Outdated Show resolved Hide resolved
execution/gethexec/node.go Outdated Show resolved Hide resolved
execution/gethexec/node.go Outdated Show resolved Hide resolved
execution/gethexec/node.go Show resolved Hide resolved
execution/gethexec/node.go Outdated Show resolved Hide resolved
Copy link
Collaborator

@PlasmaPower PlasmaPower left a comment

Choose a reason for hiding this comment

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

Here's the rest of my review, I'm onto the geth side now

cmd/nitro/nitro.go Outdated Show resolved Hide resolved
system_tests/recreatestate_rpc_test.go Show resolved Hide resolved
@AiyAbuya AiyAbuya mentioned this pull request Sep 28, 2023
PlasmaPower
PlasmaPower previously approved these changes Oct 4, 2023
Copy link
Collaborator

@PlasmaPower PlasmaPower left a comment

Choose a reason for hiding this comment

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

LGTM

Copy link
Collaborator

@PlasmaPower PlasmaPower left a comment

Choose a reason for hiding this comment

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

LGTM

@PlasmaPower PlasmaPower enabled auto-merge October 4, 2023 17:00
@PlasmaPower PlasmaPower merged commit 0181c5d into master Oct 4, 2023
7 checks passed
@PlasmaPower PlasmaPower deleted the execution-service-3 branch October 4, 2023 17:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
s Automatically added by the CLA bot if the creator of a PR is registered as having signed the CLA.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants