@@ -142,7 +142,7 @@ func CanDeleteBackup(ctx context.Context, cc connect.Client, bcp *BackupMeta) er
142
142
return ErrIncrementalBackup
143
143
}
144
144
145
- required , err := isRequiredForOplogSlicing (ctx , cc , bcp .LastWriteTS )
145
+ required , err := isRequiredForOplogSlicing (ctx , cc , bcp .LastWriteTS , primitive. Timestamp {} )
146
146
if err != nil {
147
147
return errors .Wrap (err , "check pitr requirements" )
148
148
}
@@ -178,7 +178,7 @@ func CanDeleteIncrementalChain(
178
178
}
179
179
}
180
180
181
- required , err := isRequiredForOplogSlicing (ctx , cc , lastWrite )
181
+ required , err := isRequiredForOplogSlicing (ctx , cc , lastWrite , base . LastWriteTS )
182
182
if err != nil {
183
183
return errors .Wrap (err , "check pitr requirements" )
184
184
}
@@ -262,7 +262,12 @@ func isValidBaseSnapshot(bcp *BackupMeta) bool {
262
262
return true
263
263
}
264
264
265
- func isRequiredForOplogSlicing (ctx context.Context , cc connect.Client , lw primitive.Timestamp ) (bool , error ) {
265
+ func isRequiredForOplogSlicing (
266
+ ctx context.Context ,
267
+ cc connect.Client ,
268
+ lw primitive.Timestamp ,
269
+ baseLW primitive.Timestamp ,
270
+ ) (bool , error ) {
266
271
enabled , oplogOnly , err := config .IsPITREnabled (ctx , cc )
267
272
if err != nil {
268
273
return false , err
@@ -280,7 +285,7 @@ func isRequiredForOplogSlicing(ctx context.Context, cc connect.Client, lw primit
280
285
return false , nil
281
286
}
282
287
283
- prevRestoreTime , err := FindBaseSnapshotLWBefore (ctx , cc , lw )
288
+ prevRestoreTime , err := FindBaseSnapshotLWBefore (ctx , cc , lw , baseLW )
284
289
if err != nil {
285
290
return false , errors .Wrap (err , "find previous snapshot" )
286
291
}
0 commit comments