
Roy Golan has submitted this change and it was merged. Change subject: scheduling: Add selector step to the scheduler ...................................................................... scheduling: Add selector step to the scheduler The new selector step (and relevant policy units) enhances the flexibility of our scheduling process. We used to have just two steps: - filter out all non-compliant hosts - compute weight for all remaining hosts And then a hardcoded routine selected the "best" host according to the accumulated weights. The selector replaces this hardcoded logic with a pluggable policy unit of type SELECTOR. Two example units are provided. - BasicWeightSelector - copies the old logic and - RankSelector - uses rank instead of the raw weights Change-Id: If63b90c3f5e02d9ccdc77dd920233e3013e933e0 Signed-off-by: Martin Sivák <msivak@redhat.com> --- M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/scheduling/InternalClusterPolicies.java M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/scheduling/InternalPolicyUnits.java M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/scheduling/PolicyUnitImpl.java M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/scheduling/SchedulingManager.java A backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/scheduling/policyunits/BasicWeightSelectorPolicyUnit.java A backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/scheduling/policyunits/RankSelectorPolicyUnit.java A backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/scheduling/selector/SelectorInstance.java A backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/scheduling/policyunits/BasicWeightSelectorPolicyUnitTest.java A backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/scheduling/policyunits/RankSelectorPolicyUnitTest.java M backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/scheduling/ClusterPolicy.java M backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/scheduling/PolicyUnitType.java 11 files changed, 523 insertions(+), 36 deletions(-) Approvals: Martin Sivák: Verified Jenkins CI: Passed CI tests Roy Golan: Looks good to me, approved -- To view, visit https://gerrit.ovirt.org/47772 To unsubscribe, visit https://gerrit.ovirt.org/settings Gerrit-MessageType: merged Gerrit-Change-Id: If63b90c3f5e02d9ccdc77dd920233e3013e933e0 Gerrit-PatchSet: 28 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Martin Sivák <msivak@redhat.com> Gerrit-Reviewer: Andrej Krejcir <akrejcir@redhat.com> Gerrit-Reviewer: Jenkins CI Gerrit-Reviewer: Jenny Tokar <jtokar@redhat.com> Gerrit-Reviewer: Martin Sivák <msivak@redhat.com> Gerrit-Reviewer: Phillip Bailey <phbailey@redhat.com> Gerrit-Reviewer: Roman Mohr <rmohr@redhat.com> Gerrit-Reviewer: Roy Golan <rgolan@redhat.com> Gerrit-Reviewer: Yanir Quinn <yquinn@redhat.com> Gerrit-Reviewer: gerrit-hooks <automation@ovirt.org>