Michael Kublin has uploaded a new change for review.

Change subject: engine: Fixing HibernateVm when one of the storage domain is 
not active
......................................................................

engine: Fixing HibernateVm when one of the storage domain is not active

The bug is simple we can choose storage domain which is not Active at 
getStorageDomainId.
After that a wrong storgae domain id will be send during hibernate vm and 
operation will
fail

Change-Id: I3c381c54eaa3cc874c3c918b4a9da7bf6ef241f5
Signed-off-by: Michael Kublin <[email protected]>
---
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/HibernateVmCommand.java
1 file changed, 6 insertions(+), 6 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/93/12393/1

diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/HibernateVmCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/HibernateVmCommand.java
index 50fd3e2..47ad678 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/HibernateVmCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/HibernateVmCommand.java
@@ -14,7 +14,7 @@
 import org.ovirt.engine.core.common.asynctasks.AsyncTaskType;
 import org.ovirt.engine.core.common.businessentities.DiskImage;
 import org.ovirt.engine.core.common.businessentities.Snapshot.SnapshotType;
-import org.ovirt.engine.core.common.businessentities.StorageDomainStatic;
+import org.ovirt.engine.core.common.businessentities.StorageDomainStatus;
 import org.ovirt.engine.core.common.businessentities.StorageDomainType;
 import org.ovirt.engine.core.common.businessentities.VMStatus;
 import org.ovirt.engine.core.common.businessentities.VolumeFormat;
@@ -62,12 +62,12 @@
     public NGuid getStorageDomainId() {
         if (_storageDomainId.equals(Guid.Empty) && getVm() != null) {
             VmHandler.updateDisksFromDb(getVm());
-            List<StorageDomainStatic> domainsInPool = DbFacade.getInstance()
-                        
.getStorageDomainStaticDao().getAllForStoragePool(getVm().getStoragePoolId());
+            List<StorageDomain> domainsInPool = 
getStorageDomainDAO().getAllForStoragePool(getVm().getStoragePoolId());
             if (domainsInPool.size() > 0) {
-                for (StorageDomainStatic currDomain : domainsInPool) {
-                    if 
(currDomain.getStorageDomainType().equals(StorageDomainType.Master)
-                                || 
currDomain.getStorageDomainType().equals(StorageDomainType.Data)) {
+                for (StorageDomain currDomain : domainsInPool) {
+                    if 
((currDomain.getStorageDomainType().equals(StorageDomainType.Master)
+                            || 
currDomain.getStorageDomainType().equals(StorageDomainType.Data))
+                            && currDomain.getStatus() == 
StorageDomainStatus.Active) {
                         _storageDomainId = currDomain.getId();
                         break;
                     }


--
To view, visit http://gerrit.ovirt.org/12393
To unsubscribe, visit http://gerrit.ovirt.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I3c381c54eaa3cc874c3c918b4a9da7bf6ef241f5
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Michael Kublin <[email protected]>
_______________________________________________
Engine-patches mailing list
[email protected]
http://lists.ovirt.org/mailman/listinfo/engine-patches

Reply via email to