-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[#13022] DST: PITR - Allow ability to restore to different points of …
…time in the past when tablet splitting was ongoing Summary: This diff adds support for restoring to points in time in the past when a tablet splitting was ongoing. Briefly the following algorithm is used: 1. If either of the child tablets (or both) are not registered on the master as of the time to which we are restoring then we restore the parent tablet and hide the child tablets. 2. If both the child tablets are registered on the master then we restore the child tablets and hide the parent. This works because at the time when restore was initiated, we are waiting for splits to complete. Thus at current time split children are ready, so its safe to restore the children and use hybrid time filter added as part of the PITR to ensure only restored rows are visible. Test Plan: Different phases like 1. Restore before the middle key is fetched: ybd --cxx_test yb-admin-snapshot-schedule-test --gtest-filter YbAdminRestoreDuringSplit.RestoreBeforeGetSplitKey 2. Restore after only one child is registered with the master: ybd --cxx_test yb-admin-snapshot-schedule-test --gtest-filter YbAdminRestoreDuringSplit.RestoreAfterOneChildRegistered 3. Restore after both the children registered but SPLIT_OP not applied: ybd --cxx_test yb-admin-snapshot-schedule-test --gtest-filter YbAdminRestoreDuringSplit.RestoreBeforeSplitOpIsApplied 4. Restore after children RUNNING but parent not HIDDEN: ybd --cxx_test yb-admin-snapshot-schedule-test --gtest-filter YbAdminRestoreDuringSplit.RestoreBeforeParentHidden 5. Restore after children RUNNING and parent HIDDEN: ybd --cxx_test yb-admin-snapshot-schedule-test --gtest-filter YbAdminSnapshotScheduleTest.VerifyRestoreWithDeletedTablets Reviewers: slingam, timur, sergei, asrivastava, zdrudi Reviewed By: asrivastava, zdrudi Subscribers: bogdan, ybase Differential Revision: https://phabricator.dev.yugabyte.com/D18299
- Loading branch information
1 parent
ad0c337
commit 675d486
Showing
5 changed files
with
500 additions
and
128 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.