Gilad Chaplik has uploaded a new change for review.

Change subject: core: scheduling: avoid running external filters in CDA
......................................................................

core: scheduling: avoid running external filters in CDA

External code is user responsibility, so for the sake of performance,
avoiding running external plugins in CanDoAction.

Bug-Url: https://bugzilla.redhat.com/1014698
Change-Id: I319ca2a5d9dbbc6634639e7b842beac1cf6c6ad9
Signed-off-by: Gilad Chaplik <[email protected]>
---
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/scheduling/SchedulingManager.java
1 file changed, 11 insertions(+), 5 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/50/20450/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 eaf3737..79d586e 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
@@ -186,7 +186,8 @@
                             parameters,
                             policy.getFilterPositionMap(),
                             messages,
-                            memoryChecker);
+                            memoryChecker,
+                            true);
 
             if (vdsList == null || vdsList.size() == 0) {
                 return null;
@@ -237,7 +238,8 @@
                         parameters,
                         policy.getFilterPositionMap(),
                         messages,
-                        noWaitingMemoryChecker);
+                        noWaitingMemoryChecker,
+                        false);
 
         if (vdsList == null || vdsList.size() == 0) {
             return false;
@@ -279,7 +281,8 @@
             VM vm,
             Map<String, String> parameters,
             Map<Guid, Integer> filterPositionMap,
-            List<String> messages, VdsFreeMemoryChecker memoryChecker) {
+            List<String> messages, VdsFreeMemoryChecker memoryChecker,
+            boolean shouldRunExternalFilters) {
         ArrayList<PolicyUnitImpl> internalFilters = new 
ArrayList<PolicyUnitImpl>();
         ArrayList<PolicyUnitImpl> externalFilters = new 
ArrayList<PolicyUnitImpl>();
         sortFilters(filters, filterPositionMap);
@@ -299,8 +302,11 @@
         hostList =
                 runInternalFilters(internalFilters, hostList, vm, parameters, 
filterPositionMap, messages, memoryChecker);
 
-        if (Config.<Boolean> GetValue(ConfigValues.ExternalSchedulerEnabled) 
&& externalFilters.size() > 0
-                && hostList != null && hostList.size() > 0) {
+        if (shouldRunExternalFilters
+                && Config.<Boolean> 
GetValue(ConfigValues.ExternalSchedulerEnabled)
+                && externalFilters.size() > 0
+                && hostList != null
+                && hostList.size() > 0) {
             hostList = runExternalFilters(externalFilters, hostList, vm, 
parameters, messages);
         }
 


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

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

Reply via email to