ethereum-optimism / ethereum-optimism/optimism

op-node: persisted sequencer state is not loaded after restart

Open
#12,854 0 comments 0 reactions 0 assignees View on GitHub
A-op-node C-bug
Dominant language
Go
Stars
6.5k
Forks
4k
Avg merge
2d 15h
Merged PRs (30d)
145

Description

**Bug Description**
The OP_NODE_RPC_ADMIN_STATE flag is used to persist the sequencer state so that sequencer maintains its active state after unexpected restart. This behaviour seems to be broken.

**Steps to Reproduce**
1. Set `OP_NODE_RPC_ADMIN_STATE` to a persistent path
2. Make admin_startSequencer call to start the sequencer.
3. Observe that `OP_NODE_RPC_ADMIN_STATE/state` is updated with `{"sequencerStarted":true}`
4. Restart op-node
5. Observe that the op-node is started with sequencing disabled and that `OP_NODE_RPC_ADMIN_STATE/state` is updated to `{"sequencerStarted":false}`

**Expected behavior**
op-node should load and apply the state stored in OP_NODE_RPC_ADMIN_STATE after restarts

**Environment Information:**
op-node v1.9.5 (although i think this has been an issue since at least a few 1.9 releases back)

Contributor guide

Open the contributing guide

Research direction

Start in the op-node startup path that handles OP_NODE_RPC_ADMIN_STATE and compare it with the admin_startSequencer persistence behavior. Reproduce the restart steps from the issue; done means a persisted {"sequencerStarted":true} state is loaded after restart and sequencing remains enabled instead of being overwritten as false.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
backend
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.