Skip to content

Preserve concurrent page edits during rollback - #60

Open
jzjzzzzzzz wants to merge 1 commit into
KimGLee:mainfrom
jzjzzzzzzz:fix/page-state-rollback-concurrent-edit
Open

Preserve concurrent page edits during rollback#60
jzjzzzzzzz wants to merge 1 commit into
KimGLee:mainfrom
jzjzzzzzzz:fix/page-state-rollback-concurrent-edit

Conversation

@jzjzzzzzzz

Copy link
Copy Markdown
Contributor

Summary

  • record the verified published after-image state for each projected page
  • make rollback compare the live canonical page with that exact after-image before removing it
  • preserve concurrent bytes, the rollback image, writer lock, and recovery journal when the comparison fails
  • retain the pre-verification rollback path for a corrupted stage that never became a verified publication
  • add a regression test covering an in-place concurrent edit followed by a later-page failure

Testing

  • PYTHONDONTWRITEBYTECODE=1 python3 -m unittest Tools.tests.test_project_page_state
  • make check
  • full local suite: 1087 tests pass; the existing 6 macOS /var vs /private/var failures in test_apply_task_plan remain unrelated and are addressed separately by fix/macos-repository-root-alias

Fixes #59.

@KimGLee KimGLee added the bug Something isn't working label Aug 13, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Page-state rollback can overwrite concurrent page edits

2 participants