-
Notifications
You must be signed in to change notification settings - Fork 504
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
br: fix fast compact bugs #6103
base: master
Are you sure you want to change the base?
Conversation
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: The full list of commands accepted by this bot can be found here.
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
/retest |
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## master #6103 +/- ##
===========================================
- Coverage 57.19% 45.63% -11.57%
===========================================
Files 259 223 -36
Lines 33233 32061 -1172
===========================================
- Hits 19008 14631 -4377
- Misses 12291 15588 +3297
+ Partials 1934 1842 -92
|
@@ -2603,8 +2603,10 @@ type BackupScheduleStatus struct { | |||
LogBackupStartTs *metav1.Time `json:"logBackupStartTs,omitempty"` | |||
// LastBackupTime represents the last time the backup was successfully created. | |||
LastBackupTime *metav1.Time `json:"lastBackupTime,omitempty"` | |||
// LastCompactTs represents the endTs of the last compact | |||
LastCompactTs *metav1.Time `json:"lastCompactTs,omitempty"` | |||
// LastCompactProgress represents the endTs of the last compact |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The comments of LastCompactProgress
and LastCompactExecutionTs
are same, and what's the difference between them?
What problem does this PR solve?
If we use checkpoint span as the only indicator on compact or not, when the log backup checkpoint get stuck, the progress
[last compact, checkpoint]
would not be compact due to(checkpoint - last compact)<compact_span
If the
last_backup_ts
exceeds thecheckpoint
, we should also set it asnext_compact_ts
for alignment.What is changed and how does it work?
compact_interval
if it is not behind last backup.calEndTs
func so that we could record thenext_compact_ts
even iflast_backup_ts
exceedsfastCompactLimit
Code changes
Tests
Side effects
Related changes
Release Notes
Please refer to Release Notes Language Style Guide before writing the release note.