Skip to content

Commit

Permalink
cleanup: drop rbdVol.storeImageID() in favor of rbdVol.repairImageID()
Browse files Browse the repository at this point in the history
Both `rbdVolume.repairImageID()` and `rbdVolume.storeImageID()` do the
same thing. `repairImageID()` includes optional extra checking for an
already set ImageID, which is not part of `storeImageID()`.

Remove some unneeded `ImageID == ""` checking because `repairImageID()`
does that, and remove the `storeImageID()` function.

Signed-off-by: Niels de Vos <[email protected]>
  • Loading branch information
nixpanic committed Nov 1, 2024
1 parent 9b0383c commit ddd41d3
Show file tree
Hide file tree
Showing 3 changed files with 14 additions and 34 deletions.
2 changes: 1 addition & 1 deletion internal/rbd/controllerserver.go
Original file line number Diff line number Diff line change
Expand Up @@ -790,7 +790,7 @@ func (cs *ControllerServer) createBackingImage(
}
}
}()
err = rbdVol.storeImageID(ctx, j)
err = rbdVol.repairImageID(ctx, j, true)
if err != nil {
return status.Error(codes.Internal, err.Error())
}
Expand Down
37 changes: 9 additions & 28 deletions internal/rbd/rbd_journal.go
Original file line number Diff line number Diff line change
Expand Up @@ -541,7 +541,7 @@ func undoVolReservation(ctx context.Context, rbdVol *rbdVolume, cr *util.Credent
// The volume handler won't remain same as its contains poolID,clusterID etc
// which are not same across clusters.
//
//nolint:gocyclo,cyclop,nestif // TODO: reduce complexity
//nolint:gocyclo,cyclop // TODO: reduce complexity
func RegenerateJournal(
volumeAttributes map[string]string,
claimName,
Expand Down Expand Up @@ -623,12 +623,12 @@ func RegenerateJournal(
rbdVol.ImageID = imageData.ImageAttributes.ImageID
rbdVol.Owner = imageData.ImageAttributes.Owner
rbdVol.RbdImageName = imageData.ImageAttributes.ImageName
if rbdVol.ImageID == "" {
err = rbdVol.storeImageID(ctx, j)
if err != nil {
return "", err
}

err = rbdVol.repairImageID(ctx, j, false)
if err != nil {
return "", err
}

if rbdVol.Owner != owner {
err = j.ResetVolumeOwner(ctx, rbdVol.JournalPool, rbdVol.ReservedID, owner)
if err != nil {
Expand Down Expand Up @@ -675,30 +675,11 @@ func RegenerateJournal(

log.DebugLog(ctx, "re-generated Volume ID (%s) and image name (%s) for request name (%s)",
rbdVol.VolID, rbdVol.RbdImageName, rbdVol.RequestName)
if rbdVol.ImageID == "" {
err = rbdVol.storeImageID(ctx, j)
if err != nil {
return "", err
}
}

return rbdVol.VolID, nil
}

// storeImageID retrieves the image ID and stores it in OMAP.
func (rv *rbdVolume) storeImageID(ctx context.Context, j *journal.Connection) error {
err := rv.getImageID()
if err != nil {
log.ErrorLog(ctx, "failed to get image id %s: %v", rv, err)

return err
}
err = j.StoreImageID(ctx, rv.JournalPool, rv.ReservedID, rv.ImageID)
err = rbdVol.repairImageID(ctx, j, false)
if err != nil {
log.ErrorLog(ctx, "failed to store volume id %s: %v", rv, err)

return err
return "", err
}

return nil
return rbdVol.VolID, nil
}
9 changes: 4 additions & 5 deletions internal/rbd/rbd_util.go
Original file line number Diff line number Diff line change
Expand Up @@ -1169,12 +1169,11 @@ func generateVolumeFromVolumeID(
}
}

if rbdVol.ImageID == "" {
err = rbdVol.storeImageID(ctx, j)
if err != nil {
return rbdVol, err
}
err = rbdVol.repairImageID(ctx, j, false)
if err != nil {
return rbdVol, err
}

err = rbdVol.getImageInfo()

return rbdVol, err
Expand Down

0 comments on commit ddd41d3

Please sign in to comment.