mirror of
https://github.com/ceph/ceph-csi.git
synced 2024-11-22 22:30:23 +00:00
util: remove the deleteLock acquistion check for clone and snapshot
At present while acquiring the deleteLock on the volume, we check for ongoing clone and snapshot creation operations on the same. Considering snapshot and clone controllers does not allow parent volume deletion on subjected operations, we can be free from this extra check. Signed-off-by: Humble Chirammal <hchiramm@redhat.com>
This commit is contained in:
parent
82557e3f34
commit
c42d4768ca
@ -130,20 +130,11 @@ func (ol *OperationLock) tryAcquire(op operation, volumeID string) error {
|
|||||||
val := ol.locks[cloneOpt][volumeID]
|
val := ol.locks[cloneOpt][volumeID]
|
||||||
ol.locks[cloneOpt][volumeID] = val + 1
|
ol.locks[cloneOpt][volumeID] = val + 1
|
||||||
case deleteOp:
|
case deleteOp:
|
||||||
// / During delete operation the volume should not be under expand,
|
// During delete operation the volume should not be under expand,
|
||||||
// clone or snapshot operation.
|
|
||||||
// check any expand operation is going on for given volume ID
|
// check any expand operation is going on for given volume ID
|
||||||
if _, ok := ol.locks[expandOp][volumeID]; ok {
|
if _, ok := ol.locks[expandOp][volumeID]; ok {
|
||||||
return fmt.Errorf("an Expand operation with given id %s already exists", volumeID)
|
return fmt.Errorf("an Expand operation with given id %s already exists", volumeID)
|
||||||
}
|
}
|
||||||
// check any clone operation is going on for given volume ID
|
|
||||||
if _, ok := ol.locks[cloneOpt][volumeID]; ok {
|
|
||||||
return fmt.Errorf("a Clone operation with given id %s already exists", volumeID)
|
|
||||||
}
|
|
||||||
// check any delete operation is going on for given volume ID
|
|
||||||
if _, ok := ol.locks[createOp][volumeID]; ok {
|
|
||||||
return fmt.Errorf("a Create operation with given id %s already exists", volumeID)
|
|
||||||
}
|
|
||||||
// check any restore operation is going on for given volume ID
|
// check any restore operation is going on for given volume ID
|
||||||
if _, ok := ol.locks[restoreOp][volumeID]; ok {
|
if _, ok := ol.locks[restoreOp][volumeID]; ok {
|
||||||
return fmt.Errorf("a Restore operation with given id %s already exists", volumeID)
|
return fmt.Errorf("a Restore operation with given id %s already exists", volumeID)
|
||||||
|
Loading…
Reference in New Issue
Block a user