Skip to content

Commit dc8663f

Browse files
committed
small fix
1 parent 2614d85 commit dc8663f

File tree

1 file changed

+19
-18
lines changed

1 file changed

+19
-18
lines changed

pkg/controller/perconaservermongodbrestore/physical.go

Lines changed: 19 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -288,31 +288,16 @@ func (r *ReconcilePerconaServerMongoDBRestore) reconcilePhysicalRestore(
288288

289289
finished, err := r.finishPhysicalRestore(ctx, cluster)
290290
if err != nil {
291-
return status, err // TODO: shouldn't return error
291+
log.Error(err, "Failed to recover the cluster after the restore")
292+
status.State = psmdbv1.RestoreStateReady
293+
return status, nil
292294
}
293295
if !finished {
294296
return status, nil
295297
}
296298

297299
status.State = psmdbv1.RestoreStateReady
298300

299-
err = retry.RetryOnConflict(retry.DefaultBackoff, func() error {
300-
c := new(psmdbv1.PerconaServerMongoDB)
301-
if err := r.client.Get(ctx, client.ObjectKeyFromObject(cluster), c); err != nil {
302-
return err
303-
}
304-
305-
if c.Annotations == nil {
306-
c.Annotations = make(map[string]string)
307-
}
308-
c.Annotations[psmdbv1.AnnotationResyncPBM] = "true"
309-
310-
return r.client.Update(ctx, c)
311-
})
312-
if err != nil {
313-
return status, errors.Wrapf(err, "annotate psmdb/%s for PBM resync", cluster.Name)
314-
}
315-
316301
return status, nil
317302
}
318303

@@ -415,6 +400,22 @@ func (r *ReconcilePerconaServerMongoDBRestore) finishPhysicalRestore(ctx context
415400
return false, nil
416401
}
417402

403+
if err = retry.RetryOnConflict(retry.DefaultBackoff, func() error {
404+
c := new(psmdbv1.PerconaServerMongoDB)
405+
if err := r.client.Get(ctx, client.ObjectKeyFromObject(cluster), c); err != nil {
406+
return err
407+
}
408+
409+
if c.Annotations == nil {
410+
c.Annotations = make(map[string]string)
411+
}
412+
c.Annotations[psmdbv1.AnnotationResyncPBM] = "true"
413+
414+
return r.client.Update(ctx, c)
415+
}); err != nil {
416+
return false, errors.Wrapf(err, "annotate psmdb/%s for PBM resync", cluster.Name)
417+
}
418+
418419
if err := r.updateMongodSts(ctx, cluster, func(sts *appsv1.StatefulSet) error {
419420
if sts.Annotations[psmdbv1.AnnotationRestoreInProgress] == "true" {
420421
delete(sts.Annotations, psmdbv1.AnnotationRestoreInProgress)

0 commit comments

Comments
 (0)