Op-Node: Fix divergence due to bad reset logic#3044
Conversation
|
|
This PR changes implementation code, but doesn't include a changeset. Did you forget to add one? |
This now uses the old sync package b/c the pipeline reset logic was not actually working.
79b836a to
ea69830
Compare
|
FYI this is diverging from the fix that proto made (but does get the first block correct). |
|
Ok, looked into this, on a reset this goes back to the end of a epoch & accidentally produces one more block than it should b/c of a weird interaction of sections 2b of the batch queue & the |
|
Ok, I put the latest up as a bedrock goerli replica to test it. Currently seems like it's working. |
|
This PR has been added to the merge queue, and will be merged soon. |
|
This PR is next in line to be merged, and will be merged as soon as checks pass. |
Description
Fixes a divergence bug that occurred whenever the derivation pipeline was reset.
The
progressof each stage was being set back in history correctly, but the safe head was notproperly updated. This caused a large step back in the L1 origin of L2 blocks & because the pipeline reset
occurred at any time, the nodes would reset at different times & diverge.
Additional context
The simpler version of this commit (without the batch queue reset fix) was tested for a day on goerli without a divergence (up to block 70k for all three replicas, up to block 120k for a pair of nodes).
I'm currently working on testing the change to the batch queue reset step.
Metadata