Hello Noam Slomianko,

I'd like you to do a code review.  Please visit

    http://gerrit.ovirt.org/19968

to review the following change.

Change subject: core: disable when external scheduler is down
......................................................................

core: disable when external scheduler is down

- When we are unable perform discovery on the external
scheduler, mark all external policy units as disabled.

Change-Id: I2cd7aa42f85f261f9e55e057b52d7dc4c5738252
Bug-Url: https://bugzilla.redhat.com/1014700
Signed-off-by: Noam Slomianko <nslom...@redhat.com>
Signed-off-by: Gilad Chaplik <gchap...@redhat.com>
---
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/scheduling/SchedulingManager.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/scheduling/external/ExternalSchedulerDiscoveryThread.java
2 files changed, 8 insertions(+), 1 deletion(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/68/19968/1

diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/scheduling/SchedulingManager.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/scheduling/SchedulingManager.java
index c31b91e..50ad069 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/scheduling/SchedulingManager.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/scheduling/SchedulingManager.java
@@ -82,11 +82,12 @@
         log.info("Initializing Scheduling manager");
         loadPolicyUnits();
         loadClusterPolicies();
+        ExternalSchedulerDiscoveryThread discoveryThread = new 
ExternalSchedulerDiscoveryThread();
         if(Config.<Boolean> GetValue(ConfigValues.ExternalSchedulerEnabled)) {
             log.info("Starting external scheduler dicovery thread");
-            ExternalSchedulerDiscoveryThread discoveryThread = new 
ExternalSchedulerDiscoveryThread();
             discoveryThread.start();
         } else {
+            discoveryThread.markAllExternalPoliciesAsDisabled();
             log.info("External scheduler disabled, discovery skipped");
         }
         log.info("Initialized Scheduling manager");
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/scheduling/external/ExternalSchedulerDiscoveryThread.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/scheduling/external/ExternalSchedulerDiscoveryThread.java
index e98a428..cde7ad1 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/scheduling/external/ExternalSchedulerDiscoveryThread.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/scheduling/external/ExternalSchedulerDiscoveryThread.java
@@ -32,6 +32,8 @@
         } else {
             AuditLogableBase loggable = new AuditLogableBase();
             AuditLogDirector.log(loggable, 
AuditLogType.FAILED_TO_CONNECT_TO_SCHEDULER_PROXY);
+            markAllExternalPoliciesAsDisabled();
+            log.warn("Discovery returned empty result, disabled external 
policy units");
         }
     }
 
@@ -73,6 +75,10 @@
         }
     }
 
+    public void markAllExternalPoliciesAsDisabled(){
+        markExternalPoliciesAsDisabled(getPolicyUnitDao().getAll());
+    }
+
     private PolicyUnit compareToDB(List<PolicyUnit> dbEnteries,
             ExternalSchedulerDiscoveryUnit discoveryUnit,
             PolicyUnitType type) {


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

Gerrit-MessageType: newchange
Gerrit-Change-Id: I2cd7aa42f85f261f9e55e057b52d7dc4c5738252
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-engine
Gerrit-Branch: ovirt-engine-3.3
Gerrit-Owner: Gilad Chaplik <gchap...@redhat.com>
Gerrit-Reviewer: Noam Slomianko <nslom...@redhat.com>
_______________________________________________
Engine-patches mailing list
Engine-patches@ovirt.org
http://lists.ovirt.org/mailman/listinfo/engine-patches

Reply via email to