Martin Peřina has uploaded a new change for review.

Change subject: core: Introduce host status Kdumping
......................................................................

core: Introduce host status Kdumping

Adds Kdumping status to VDSStatus to identify host is currently dumping
its kernel crash. This status will be used in following patches.

Change-Id: I1361baed86f8d062d29d7e75dae116125ca26ed3
Bug-Url: https://bugzilla.redhat.com/1079821
Signed-off-by: Martin Perina <mper...@redhat.com>
---
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ClearNonResponsiveVdsVmsCommand.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/FenceExecutor.java
M 
backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/VdcActionUtils.java
M 
backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/VDSStatus.java
M 
backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/model/HostStatus.java
M 
backend/manager/modules/restapi/types/src/main/java/org/ovirt/engine/api/restapi/types/HostMapper.java
M 
backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/VdsManager.java
M 
backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/SpmStopVDSCommand.java
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/table/column/HostStatusCell.java
9 files changed, 31 insertions(+), 5 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/13/28313/1

diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ClearNonResponsiveVdsVmsCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ClearNonResponsiveVdsVmsCommand.java
index 6158c1d..d1a5cc5 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ClearNonResponsiveVdsVmsCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ClearNonResponsiveVdsVmsCommand.java
@@ -80,7 +80,10 @@
 
         }
 
-        if (hasVMs() && getVds().getStatus() != VDSStatus.NonResponsive && 
getVds().getStatus() != VDSStatus.Reboot) {
+        if (hasVMs()
+                && getVds().getStatus() != VDSStatus.NonResponsive
+                && getVds().getStatus() != VDSStatus.Reboot
+                && getVds().getStatus() != VDSStatus.Kdumping) {
             return 
failCanDoAction(VdcBllMessages.VDS_CANNOT_CLEAR_VMS_WRONG_STATUS);
         }
 
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/FenceExecutor.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/FenceExecutor.java
index 7eeba28..734c412 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/FenceExecutor.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/FenceExecutor.java
@@ -298,6 +298,7 @@
         VdsDynamic vdsDynamic = vds.getDynamicData();
         return (vdsDynamic.getStatus() == VDSStatus.Down
                  || vdsDynamic.getStatus() == VDSStatus.Reboot
+                 || vdsDynamic.getStatus() == VDSStatus.Kdumping
                  || (vdsDynamic.getStatus() == VDSStatus.NonOperational
                      && vdsDynamic.getNonOperationalReason() == 
NonOperationalReason.NETWORK_UNREACHABLE));
     }
diff --git 
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/VdcActionUtils.java
 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/VdcActionUtils.java
index ecc8d12..b017e15 100644
--- 
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/VdcActionUtils.java
+++ 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/VdcActionUtils.java
@@ -96,6 +96,17 @@
         vdsMatrix.put(
                 VDSStatus.Down,
                 EnumSet.of(VdcActionType.ActivateVds, 
VdcActionType.ApproveVds, VdcActionType.RefreshHostCapabilities));
+
+        vdsMatrix.put(
+                VDSStatus.Kdumping,
+                EnumSet.of(
+                        VdcActionType.ActivateVds,
+                        VdcActionType.ApproveVds,
+                        VdcActionType.ClearNonResponsiveVdsVms,
+                        VdcActionType.MaintenanceVds,
+                        VdcActionType.RemoveVds,
+                        VdcActionType.RefreshHostCapabilities));
+
         _matrix.put(VDS.class, vdsMatrix);
 
         Map<Enum<?>, Set<VdcActionType>> vmMatrix = new HashMap<Enum<?>, 
Set<VdcActionType>>();
diff --git 
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/VDSStatus.java
 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/VDSStatus.java
index 811fa61..3e5d2a4 100644
--- 
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/VDSStatus.java
+++ 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/VDSStatus.java
@@ -16,7 +16,8 @@
     NonOperational(10),
     PendingApproval(11),
     Initializing(12),
-    Connecting(13);
+    Connecting(13),
+    Kdumping(14);
 
     private static final HashMap<Integer, VDSStatus> mappings = new 
HashMap<Integer, VDSStatus>();
     private int intValue;
diff --git 
a/backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/model/HostStatus.java
 
b/backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/model/HostStatus.java
index f9ac9cb..cc5d950 100644
--- 
a/backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/model/HostStatus.java
+++ 
b/backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/model/HostStatus.java
@@ -31,7 +31,8 @@
     CONNECTING,
     REBOOT,
     UNASSIGNED,
-    UP;
+    UP,
+    KDUMPING;
 
     public String value() {
         return name().toLowerCase();
diff --git 
a/backend/manager/modules/restapi/types/src/main/java/org/ovirt/engine/api/restapi/types/HostMapper.java
 
b/backend/manager/modules/restapi/types/src/main/java/org/ovirt/engine/api/restapi/types/HostMapper.java
index 0a83f8b..59c9d10 100644
--- 
a/backend/manager/modules/restapi/types/src/main/java/org/ovirt/engine/api/restapi/types/HostMapper.java
+++ 
b/backend/manager/modules/restapi/types/src/main/java/org/ovirt/engine/api/restapi/types/HostMapper.java
@@ -607,6 +607,8 @@
             return HostStatus.INITIALIZING;
         case Connecting:
             return HostStatus.CONNECTING;
+        case Kdumping:
+            return HostStatus.KDUMPING;
         default:
             return null;
         }
diff --git 
a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/VdsManager.java
 
b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/VdsManager.java
index f7cd9e7..87ce0e4 100644
--- 
a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/VdsManager.java
+++ 
b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/VdsManager.java
@@ -319,7 +319,9 @@
                 _vds.getStatus() != VDSStatus.InstallFailed &&
                 _vds.getStatus() != VDSStatus.Reboot &&
                 _vds.getStatus() != VDSStatus.Maintenance &&
-                _vds.getStatus() != VDSStatus.PendingApproval && 
_vds.getStatus() != VDSStatus.Down);
+                _vds.getStatus() != VDSStatus.PendingApproval &&
+                _vds.getStatus() != VDSStatus.Down &&
+                _vds.getStatus() != VDSStatus.Kdumping);
     }
 
     private void HandleVdsRecoveringException(VDSRecoveringException ex) {
diff --git 
a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/SpmStopVDSCommand.java
 
b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/SpmStopVDSCommand.java
index 7928f33..6dbf6f4 100644
--- 
a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/SpmStopVDSCommand.java
+++ 
b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/SpmStopVDSCommand.java
@@ -116,7 +116,9 @@
      */
     private boolean canVdsBeReached() {
         VDSStatus vdsStatus = getVds().getStatus();
-        if (vdsStatus == VDSStatus.Down || vdsStatus == VDSStatus.Reboot) {
+        if (vdsStatus == VDSStatus.Down ||
+                vdsStatus == VDSStatus.Reboot ||
+                vdsStatus == VDSStatus.Kdumping) {
             vdsStatus = getVds().getPreviousStatus();
         }
         return vdsStatus != VDSStatus.NonResponsive && getVds().getStatus() != 
VDSStatus.Connecting;
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/table/column/HostStatusCell.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/table/column/HostStatusCell.java
index 7a0620e..2157e90 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/table/column/HostStatusCell.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/table/column/HostStatusCell.java
@@ -62,6 +62,9 @@
         case Initializing:
             statusImage = resources.waitImage();
             break;
+        case Kdumping:
+            statusImage = resources.waitImage();
+            break;
         default:
             statusImage = resources.downImage();
         }


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

Gerrit-MessageType: newchange
Gerrit-Change-Id: I1361baed86f8d062d29d7e75dae116125ca26ed3
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Martin Peřina <mper...@redhat.com>
_______________________________________________
Engine-patches mailing list
Engine-patches@ovirt.org
http://lists.ovirt.org/mailman/listinfo/engine-patches

Reply via email to