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

[C#] Recovery improvements #330

Merged
merged 9 commits into from
Sep 16, 2020
Merged

[C#] Recovery improvements #330

merged 9 commits into from
Sep 16, 2020

Conversation

badrishc
Copy link
Contributor

@badrishc badrishc commented Sep 15, 2020

This PR significantly speeds up recovery (from checkpoint), which is important in several scenarios.

  • Allow calling recover multple times with newer hlog checkpoints
  • Fix bug in index fast-forward when using snapshot checkpoints with separate index checkpoints
  • Recovery from snapshot leaves the log mutable after recovery
  • Avoid rescanning the log during recovery - only single scan of the log is now needed
  • Only write back pages that have records that need to be marked as Invalid
  • Do not write back from snapshot file to main log during recovery as it should remain as mutable unpersisted state

* Allow calling recover multple times with newer hlog checkpoints
* Fix bug in index fast-forward when using snapshot checkpoints with separate index checkpoints
* Avoid rescanning the log during recovery - only single scan of the log is now needed
* Only write back pages that have records that need to be marked as Invalid
… it should remain as mutable unpersisted state.
@badrishc badrishc merged commit 12aa82f into master Sep 16, 2020
@badrishc badrishc deleted the recovery-improvements branch November 11, 2020 02:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant