[go: up one dir, main page]

EVM/Kernel: make withdrawal counter revertible

What

This MR changes the way withdrawal counter (aka withdraw nonce) is stored so that it is revertible, i.e. if transaction fails then the counter is reverted to its previous state.

Why

There is an edge case when sequencer and smart rollup node reboot kernel at different points and non-revertible withdraw nonce causes state divergence.

How

Implement withdrawal counter as a system account extension, similarly to how ticket table works.

Manually testing the MR

make test

Checklist

  • Document the interface of any function added or modified (see the coding guidelines)
  • Document any change to the user interface, including configuration parameters (see node configuration)
  • Provide automatic testing (see the testing guide).
  • For new features and bug fixes, add an item in the appropriate changelog (docs/protocols/alpha.rst for the protocol and the environment, CHANGES.rst at the root of the repository for everything else).
  • Select suitable reviewers using the Reviewers field below.
  • Select as Assignee the next person who should take action on that MR
Edited by Michael Zaikin

Merge request reports

Loading