From ed614c4f5212494fae5f17244b92b6b1b3189752 Mon Sep 17 00:00:00 2001 From: anthony Date: Wed, 29 Jun 2011 18:40:18 -0700 Subject: [PATCH] bug 10511: lock on snapshot entry instead of volume entry status 10511: resolved fixed --- server/src/com/cloud/storage/StorageManagerImpl.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/server/src/com/cloud/storage/StorageManagerImpl.java b/server/src/com/cloud/storage/StorageManagerImpl.java index 19823bc1b7e..844d26e1114 100755 --- a/server/src/com/cloud/storage/StorageManagerImpl.java +++ b/server/src/com/cloud/storage/StorageManagerImpl.java @@ -654,7 +654,7 @@ public class StorageManagerImpl implements StorageManager, StorageService, Manag String basicErrMsg = "Failed to create volume from " + snapshot.getName(); CreateVolumeFromSnapshotAnswer answer; - if (!_volsDao.lockInLockTable(volumeId.toString(), 10)) { + if (!_snapshotDao.lockInLockTable(snapshotId.toString(), 10)) { throw new CloudRuntimeException("failed to create volume from " + snapshotId + " due to original volume:" + volumeId + " is being used, try it later "); } try { @@ -667,7 +667,7 @@ public class StorageManagerImpl implements StorageManager, StorageService, Manag } catch (StorageUnavailableException e) { s_logger.error(basicErrMsg); } finally { - _volsDao.unlockFromLockTable(volumeId.toString()); + _snapshotDao.unlockFromLockTable(snapshotId.toString()); } return new Pair(vdiUUID, basicErrMsg); }