rbd: remove extra Destory of parent volume

removed extra Destory of the parent volume.

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
This commit is contained in:
Madhu Rajanna 2020-10-29 15:18:31 +05:30 committed by mergify[bot]
parent 4fcd649fa7
commit b3120926b9
2 changed files with 7 additions and 12 deletions

View File

@ -606,10 +606,9 @@ func (cs *ControllerServer) DeleteVolume(ctx context.Context, req *csi.DeleteVol
} }
defer cs.OperationLocks.ReleaseDeleteLock(volumeID) defer cs.OperationLocks.ReleaseDeleteLock(volumeID)
rbdVol := &rbdVolume{} var rbdVol = &rbdVolume{}
defer rbdVol.Destroy()
rbdVol, err = genVolFromVolID(ctx, volumeID, cr, req.GetSecrets()) rbdVol, err = genVolFromVolID(ctx, volumeID, cr, req.GetSecrets())
defer rbdVol.Destroy()
if err != nil { if err != nil {
if errors.Is(err, util.ErrPoolNotFound) { if errors.Is(err, util.ErrPoolNotFound) {
util.WarningLog(ctx, "failed to get backend volume for %s: %v", volumeID, err) util.WarningLog(ctx, "failed to get backend volume for %s: %v", volumeID, err)
@ -643,7 +642,6 @@ func (cs *ControllerServer) DeleteVolume(ctx context.Context, req *csi.DeleteVol
} }
return &csi.DeleteVolumeResponse{}, nil return &csi.DeleteVolumeResponse{}, nil
} }
defer rbdVol.Destroy()
// lock out parallel create requests against the same volume name as we // lock out parallel create requests against the same volume name as we
// cleanup the image and associated omaps for the same // cleanup the image and associated omaps for the same
@ -737,10 +735,10 @@ func (cs *ControllerServer) CreateSnapshot(ctx context.Context, req *csi.CreateS
} }
defer cr.DeleteCredentials() defer cr.DeleteCredentials()
rbdVol := &rbdVolume{} var rbdVol = &rbdVolume{}
defer rbdVol.Destroy()
// Fetch source volume information // Fetch source volume information
rbdVol, err = genVolFromVolID(ctx, req.GetSourceVolumeId(), cr, req.GetSecrets()) rbdVol, err = genVolFromVolID(ctx, req.GetSourceVolumeId(), cr, req.GetSecrets())
defer rbdVol.Destroy()
if err != nil { if err != nil {
// nolint:gocritic // this ifElseChain can not be rewritten to a switch statement // nolint:gocritic // this ifElseChain can not be rewritten to a switch statement
if errors.Is(err, ErrImageNotFound) { if errors.Is(err, ErrImageNotFound) {
@ -753,7 +751,6 @@ func (cs *ControllerServer) CreateSnapshot(ctx context.Context, req *csi.CreateS
} }
return nil, err return nil, err
} }
defer rbdVol.Destroy()
// TODO: re-encrypt snapshot with a new passphrase // TODO: re-encrypt snapshot with a new passphrase
if rbdVol.Encrypted { if rbdVol.Encrypted {
@ -1109,10 +1106,9 @@ func (cs *ControllerServer) ControllerExpandVolume(ctx context.Context, req *csi
} }
defer cr.DeleteCredentials() defer cr.DeleteCredentials()
rbdVol := &rbdVolume{} var rbdVol = &rbdVolume{}
defer rbdVol.Destroy()
rbdVol, err = genVolFromVolID(ctx, volID, cr, req.GetSecrets()) rbdVol, err = genVolFromVolID(ctx, volID, cr, req.GetSecrets())
defer rbdVol.Destroy()
if err != nil { if err != nil {
// nolint:gocritic // this ifElseChain can not be rewritten to a switch statement // nolint:gocritic // this ifElseChain can not be rewritten to a switch statement
if errors.Is(err, ErrImageNotFound) { if errors.Is(err, ErrImageNotFound) {
@ -1125,7 +1121,6 @@ func (cs *ControllerServer) ControllerExpandVolume(ctx context.Context, req *csi
} }
return nil, err return nil, err
} }
defer rbdVol.Destroy()
if rbdVol.Encrypted { if rbdVol.Encrypted {
return nil, status.Errorf(codes.InvalidArgument, "encrypted volumes do not support resize (%s)", return nil, status.Errorf(codes.InvalidArgument, "encrypted volumes do not support resize (%s)",

View File

@ -690,7 +690,7 @@ func genVolFromVolID(ctx context.Context, volumeID string, cr *util.Credentials,
rbdVol.RadosNamespace, err = util.RadosNamespace(util.CsiConfigFile, rbdVol.ClusterID) rbdVol.RadosNamespace, err = util.RadosNamespace(util.CsiConfigFile, rbdVol.ClusterID)
if err != nil { if err != nil {
return nil, err return rbdVol, err
} }
j, err := volJournal.Connect(rbdVol.Monitors, rbdVol.RadosNamespace, cr) j, err := volJournal.Connect(rbdVol.Monitors, rbdVol.RadosNamespace, cr)