Martin Sivák has uploaded a new change for review. Change subject: engine: Improve reporting when scheduling fails on network ......................................................................
engine: Improve reporting when scheduling fails on network This fixes and improves the way we construct canDoAction messages in the NetworkPolicyUnit. Change-Id: Ic60daf20842ba69457b293f451060e21381faf80 Bug-Url: https://bugzilla.redhat.com/show_bug.cgi?id=1132951 Bug-Url: https://bugzilla.redhat.com/show_bug.cgi?id=1114987 Signed-off-by: Martin Sivak <msi...@redhat.com> --- M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/scheduling/policyunits/NetworkPolicyUnit.java M backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/errors/VdcBllMessages.java M backend/manager/modules/dal/src/main/resources/bundles/AppErrors.properties M frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/AppErrors.java M frontend/webadmin/modules/userportal-gwtp/src/main/resources/org/ovirt/engine/ui/frontend/AppErrors.properties M frontend/webadmin/modules/webadmin/src/main/resources/org/ovirt/engine/ui/frontend/AppErrors.properties 6 files changed, 40 insertions(+), 43 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/99/35499/1 diff --git a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/scheduling/policyunits/NetworkPolicyUnit.java b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/scheduling/policyunits/NetworkPolicyUnit.java index a9c5391..041f21a 100644 --- a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/scheduling/policyunits/NetworkPolicyUnit.java +++ b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/scheduling/policyunits/NetworkPolicyUnit.java @@ -48,7 +48,6 @@ Map<Guid, VdsNetworkInterface> hostDisplayNics = getDisplayNics(displayNetwork); for (VDS host : hosts) { - List<String> missingIfs = new ArrayList<>(); ValidationResult result = validateRequiredNetworksAvailable(host, vm, @@ -56,14 +55,12 @@ displayNetwork, networksByName, hostNics.get(host.getId()), - hostDisplayNics.get(host.getId()), - missingIfs); + hostDisplayNics.get(host.getId())); if (!result.isValid()) { toRemoveHostList.add(host); - String nics = StringUtils.join(missingIfs, ", "); - messages.addMessage(host.getId(), String.format("$networkNames %1$s", nics)); - messages.addMessage(host.getId(), VdcBllMessages.VAR__DETAIL__NETWORK_MISSING.name()); + messages.addMessages(host.getId(), result.getVariableReplacements()); + messages.addMessage(host.getId(), result.getMessage().name()); } } hosts.removeAll(toRemoveHostList); @@ -107,8 +104,9 @@ Network displayNetwork, Map<String, Network> networksByName, List<String> hostNetworks, - VdsNetworkInterface displayNic, - List<String> missingNetworks) { + VdsNetworkInterface displayNic) { + + List<String> missingIfs = new ArrayList<>(); boolean onlyRequiredNetworks = Config.<Boolean> getValue(ConfigValues.OnlyRequiredNetworksMandatoryForVdsSelection); @@ -126,17 +124,18 @@ } } } + if (!found) { - if (missingNetworks != null) { - missingNetworks.add(vmIf.getNetworkName()); - } - StringBuilder sbBuilder = new StringBuilder(); - sbBuilder.append(Entities.vmInterfacesByNetworkName(vmNICs).keySet()); - log.debugFormat("host {0} is missing networks required by VM nics {1}", - vds.getName(), - sbBuilder.toString()); - return new ValidationResult(VdcBllMessages.ACTION_TYPE_FAILED_VDS_VM_NETWORKS); + missingIfs.add(vmIf.getNetworkName()); } + } + + if (!missingIfs.isEmpty()) { + String nics = StringUtils.join(missingIfs, ", "); + log.warnFormat("host {0} is missing networks required by VM nics {1}", + vds.getName(), nics); + return new ValidationResult(VdcBllMessages.VAR__DETAIL__NETWORK_MISSING, + String.format("$networkNames %1$s", nics)); } return validateDisplayNetworkAvailability(vds, onlyRequiredNetworks, displayNic, displayNetwork); @@ -184,17 +183,18 @@ // Check if display network attached to host and has a proper boot protocol if (displayNic == null) { - log.debugFormat("host {0} is missing the cluster's display network", host.getName()); - return new ValidationResult(VdcBllMessages.ACTION_TYPE_FAILED_MISSING_DISPLAY_NETWORK); + log.warnFormat("host {0} is missing the cluster's display network", host.getName()); + return new ValidationResult(VdcBllMessages.VAR__DETAIL__DISPLAY_NETWORK_MISSING, + String.format("$DisplayNetwork %1$s", displayNetwork.getName())); } if (displayNic.getBootProtocol() == NetworkBootProtocol.NONE) { - log.debugFormat("Host {0} has the display network {1} configured with improper boot protocol on interface {2}.", + log.warnFormat("Host {0} has the display network {1} configured with improper boot protocol on interface {2}.", host.getName(), displayNetwork.getName(), displayNic.getName()); - return new ValidationResult(VdcBllMessages.ACTION_TYPE_FAILED_DISPLAY_NETWORK_HAS_NO_BOOT_PROTOCOL, - String.format("$DisplayNetwork %s", displayNetwork.getName())); + return new ValidationResult(VdcBllMessages.VAR__DETAIL__DISPLAY_NETWORK_HAS_NO_BOOT_PROTOCOL, + String.format("$DisplayNetwork %1$s", displayNetwork.getName())); } return ValidationResult.VALID; diff --git a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/errors/VdcBllMessages.java b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/errors/VdcBllMessages.java index 2f8c848..9988645 100644 --- a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/errors/VdcBllMessages.java +++ b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/errors/VdcBllMessages.java @@ -219,8 +219,7 @@ ACTION_TYPE_FAILED_VDS_VM_SWAP(ErrorType.CONFLICT), ACTION_TYPE_FAILED_VDS_VM_CPUS(ErrorType.CONFLICT), ACTION_TYPE_FAILED_VDS_VM_CPU_LEVEL(ErrorType.CONFLICT), - ACTION_TYPE_FAILED_VDS_VM_NETWORKS(ErrorType.CONFLICT), - ACTION_TYPE_FAILED_MISSING_DISPLAY_NETWORK(ErrorType.CONFLICT), + ACTION_TYPE_FAILED_NO_HA_VDS(ErrorType.CONFLICT), ACTION_TYPE_FAILED_NO_VDS_AVAILABLE_IN_CLUSTER(ErrorType.CONFLICT), ACTION_TYPE_FAILED_CANNOT_REMOVE_IMAGE_TEMPLATE(ErrorType.CONFLICT), ACTION_TYPE_FAILED_CPU_NOT_FOUND(ErrorType.BAD_PARAMETERS), @@ -537,7 +536,6 @@ EXTERNAL_NETWORK_CANNOT_BE_PROVISIONED(ErrorType.NOT_SUPPORTED), NETWORK_LABEL_FORMAT_INVALID(ErrorType.BAD_PARAMETERS), ACTION_TYPE_FAILED_CANNOT_REMOVE_LABELED_NETWORK_FROM_NIC(ErrorType.CONFLICT), - ACTION_TYPE_FAILED_DISPLAY_NETWORK_HAS_NO_BOOT_PROTOCOL(ErrorType.BAD_PARAMETERS), IMPROPER_INTERFACE_IS_LABELED(ErrorType.BAD_PARAMETERS), IMPROPER_BOND_IS_LABELED(ErrorType.BAD_PARAMETERS), INTERFACE_ALREADY_LABELED(ErrorType.CONFLICT), @@ -1003,6 +1001,8 @@ VAR__FILTERTYPE__INTERNAL, VAR__FILTERTYPE__EXTERNAL, VAR__DETAIL__NETWORK_MISSING, + VAR__DETAIL__DISPLAY_NETWORK_MISSING, + VAR__DETAIL__DISPLAY_NETWORK_HAS_NO_BOOT_PROTOCOL, VAR__DETAIL__AFFINITY_FAILED_POSITIVE, VAR__DETAIL__AFFINITY_FAILED_NEGATIVE, VAR__DETAIL__LOW_CPU_LEVEL, diff --git a/backend/manager/modules/dal/src/main/resources/bundles/AppErrors.properties b/backend/manager/modules/dal/src/main/resources/bundles/AppErrors.properties index 44081a1..e463b8c 100644 --- a/backend/manager/modules/dal/src/main/resources/bundles/AppErrors.properties +++ b/backend/manager/modules/dal/src/main/resources/bundles/AppErrors.properties @@ -230,8 +230,7 @@ ACTION_TYPE_FAILED_VDS_VM_MEMORY=Cannot ${action} ${type}. There are no available running Hosts with sufficient memory in VM's Cluster . ACTION_TYPE_FAILED_VDS_VM_CPUS=Cannot ${action} ${type}. There are no available running Hosts with enough cores in VM's Cluster . ACTION_TYPE_FAILED_VDS_VM_CPU_LEVEL=Cannot ${action} ${type}. The host has lower CPU level than the VM was run with. -ACTION_TYPE_FAILED_VDS_VM_NETWORKS=Cannot ${action} ${type}. There are no available running Hosts with all the networks used by the VM. -ACTION_TYPE_FAILED_MISSING_DISPLAY_NETWORK=Cannot ${action} ${type}. There are no available running Hosts with the cluster's display network. +ACTION_TYPE_FAILED_NO_HA_VDS=Cannot ${action} ${type}. There are no available HA hosts in the VM's Cluster. CANNOT_MAINTENANCE_VDS_RUN_VMS_NO_OTHER_RUNNING_VDS=The following Hosts have running VMs and cannot be switched to maintenance mode: ${HostsList}. Please ensure that the following Clusters have at least one Host in UP state: ${ClustersList}. ACTION_TYPE_FAILED_VDS_VM_VERSION=Cannot ${action} ${type}. VM's tools version (${toolsVersion}) mismatch with the Host's (${serverVersion}) version. @@ -516,7 +515,6 @@ NETWORK_LABEL_FORMAT_INVALID=Network label must be formed only from: English letters, numbers, hyphen or underscore. ACTION_TYPE_FAILED_NETWORK_ALREADY_LABELED=Cannot ${action} ${type}. The specified network is already labeled. ACTION_TYPE_FAILED_CANNOT_REMOVE_LABELED_NETWORK_FROM_NIC=Cannot ${action} ${type}. The following networks cannot be removed from the network interface since they are managed by the label: ${ACTION_TYPE_FAILED_CANNOT_REMOVE_LABELED_NETWORK_FROM_NIC_LIST}. Please remove the label from the network interface in order to remove the network. -ACTION_TYPE_FAILED_DISPLAY_NETWORK_HAS_NO_BOOT_PROTOCOL=Cannot ${action} ${type}. The display network ${DisplayNetwork} must have a DHCP or Static boot protocol when configured on a host. LABELED_NETWORK_ATTACHED_TO_WRONG_INTERFACE=Cannot ${action} ${type}. The following networks are already attached to a different interface on the host: ${AssignedNetworks}. Please remove the networks in order to label the interface. OTHER_INTERFACE_ALREADY_LABELED=Cannot ${action} ${type}. The label is already defined on other interface ${LabeledNic} on the host. ERROR_CANNOT_RECOVERY_STORAGE_POOL_THERE_IS_ACTIVE_DATA_DOMAINS=Cannot recover Data Center with active Data Storage Domain in Data Center. @@ -1212,6 +1210,8 @@ SCHEDULING_HOST_FILTERED_REASON=The host ${hostName} did not satisfy ${filterType} filter ${filterName}. SCHEDULING_HOST_FILTERED_REASON_WITH_DETAIL=The host ${hostName} did not satisfy ${filterType} filter ${filterName} because ${detailMessage}. VAR__DETAIL__NETWORK_MISSING=$detailMessage network(s) ${networkNames} are missing +VAR__DETAIL__DISPLAY_NETWORK_MISSING=$detailMessage display network ${DisplayNetwork} was missing +VAR__DETAIL__DISPLAY_NETWORK_HAS_NO_BOOT_PROTOCOL=$detailMessage the display network ${DisplayNetwork} must have a DHCP or Static boot protocol when configured on a host VAR__DETAIL__AFFINITY_FAILED_POSITIVE=$detailMessage it did not match positive affinity rules ${affinityRules} VAR__DETAIL__AFFINITY_FAILED_NEGATIVE=$detailMessage it matched negative affinity rules ${affinityRules} VAR__DETAIL__LOW_CPU_LEVEL=$detailMessage its CPU level ${hostCPULevel} is lower than the VM requires ${vmCPULevel} diff --git a/frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/AppErrors.java b/frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/AppErrors.java index d3cf521..b914c6c 100644 --- a/frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/AppErrors.java +++ b/frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/AppErrors.java @@ -625,12 +625,6 @@ @DefaultStringValue("Cannot ${action} ${type}. The host has lower CPU level than the VM was run with.") String ACTION_TYPE_FAILED_VDS_VM_CPU_LEVEL(); - @DefaultStringValue("Cannot ${action} ${type}. There are no available running Hosts with all the networks used by the VM.") - String ACTION_TYPE_FAILED_VDS_VM_NETWORKS(); - - @DefaultStringValue("Cannot ${action} ${type}. There are no available running Hosts with the cluster's display network.") - String ACTION_TYPE_FAILED_MISSING_DISPLAY_NETWORK(); - @DefaultStringValue("Cannot ${action} ${type}. There are no available HA hosts in the VM's Cluster.") String ACTION_TYPE_FAILED_NO_HA_VDS(); @@ -1443,9 +1437,6 @@ @DefaultStringValue("Cannot ${action} ${type}. The following networks cannot be removed from the network interface since they are managed by the label: ${ACTION_TYPE_FAILED_CANNOT_REMOVE_LABELED_NETWORK_FROM_NIC_LIST}. Please remove the label from the network interface in order to remove the network.") String ACTION_TYPE_FAILED_CANNOT_REMOVE_LABELED_NETWORK_FROM_NIC(); - - @DefaultStringValue("Cannot ${action} ${type}. The display network ${DisplayNetwork} must have a DHCP or Static boot protocol when configured on a host.") - String ACTION_TYPE_FAILED_DISPLAY_NETWORK_HAS_NO_BOOT_PROTOCOL(); @DefaultStringValue("Cannot ${action} ${type}. The following networks are already attached to a different interface: ${AssignedNetworks}. Please remove the networks in order to label the interface.") String LABELED_NETWORK_ATTACHED_TO_WRONG_INTERFACE(); @@ -3234,6 +3225,12 @@ @DefaultStringValue("$detailMessage network(s) ${networkNames} are missing") String VAR__DETAIL__NETWORK_MISSING(); + @DefaultStringValue("$detailMessage display network ${DisplayNetwork} was missing") + String VAR__DETAIL__DISPLAY_NETWORK_MISSING(); + + @DefaultStringValue("$detailMessage the display network ${DisplayNetwork} must have a DHCP or Static boot protocol when configured on a host") + String VAR__DETAIL__DISPLAY_NETWORK_HAS_NO_BOOT_PROTOCOL(); + @DefaultStringValue("$detailMessage its CPU level ${hostCPULevel} is lower than the VM requires ${vmCPULevel}") String VAR__DETAIL__LOW_CPU_LEVEL(); diff --git a/frontend/webadmin/modules/userportal-gwtp/src/main/resources/org/ovirt/engine/ui/frontend/AppErrors.properties b/frontend/webadmin/modules/userportal-gwtp/src/main/resources/org/ovirt/engine/ui/frontend/AppErrors.properties index 5d3a3c9..f442a6a 100644 --- a/frontend/webadmin/modules/userportal-gwtp/src/main/resources/org/ovirt/engine/ui/frontend/AppErrors.properties +++ b/frontend/webadmin/modules/userportal-gwtp/src/main/resources/org/ovirt/engine/ui/frontend/AppErrors.properties @@ -221,8 +221,7 @@ ACTION_TYPE_FAILED_VDS_VM_MEMORY=Cannot ${action} ${type}. There are no available running Hosts with sufficient memory in VM's Cluster . ACTION_TYPE_FAILED_VDS_VM_CPUS=Cannot ${action} ${type}. There are no available running Hosts with enough cores in VM's Cluster . ACTION_TYPE_FAILED_VDS_VM_CPU_LEVEL=Cannot ${action} ${type}. The host has lower CPU level than the VM was run with. -ACTION_TYPE_FAILED_VDS_VM_NETWORKS=Cannot ${action} ${type}. There are no available running Hosts with all the networks used by the VM. -ACTION_TYPE_FAILED_MISSING_DISPLAY_NETWORK=Cannot ${action} ${type}. There are no available running Hosts with the cluster's display network. +ACTION_TYPE_FAILED_NO_HA_VDS=Cannot ${action} ${type}. There are no available HA hosts in the VM's Cluster. CANNOT_MAINTENANCE_VDS_RUN_VMS_NO_OTHER_RUNNING_VDS=The following Hosts have running VMs and cannot be switched to maintenance mode: ${HostsList}.\nPlease ensure that the following Clusters have at least one Host in UP state: ${ClustersList}. ACTION_TYPE_FAILED_VDS_VM_VERSION=Cannot ${action} ${type}. VM's tools version (${toolsVersion}) mismatch with the Host's (${serverVersion}) version. ACTION_TYPE_FAILED_VDS_VM_SWAP=Cannot ${action} ${type}. Host swap percentage is above the defined threshold.\n\ @@ -488,7 +487,6 @@ NETWORK_LABEL_FORMAT_INVALID=Network label must be formed only from: English letters, numbers, hyphen or underscore. ACTION_TYPE_FAILED_NETWORK_ALREADY_LABELED=Cannot ${action} ${type}. The specified network is already labeled. ACTION_TYPE_FAILED_CANNOT_REMOVE_LABELED_NETWORK_FROM_NIC=Cannot ${action} ${type}. The following networks cannot be removed from the network interface since they are managed by the label: ${ACTION_TYPE_FAILED_CANNOT_REMOVE_LABELED_NETWORK_FROM_NIC_LIST}. Please remove the label from the network interface in order to remove the network. -ACTION_TYPE_FAILED_DISPLAY_NETWORK_HAS_NO_BOOT_PROTOCOL=Cannot ${action} ${type}. Please contact your system administrator. LABELED_NETWORK_ATTACHED_TO_WRONG_INTERFACE=Cannot ${action} ${type}. The following networks are already attached to a different interface: ${AssignedNetworks}. Please remove the networks in order to label the interface. OTHER_INTERFACE_ALREADY_LABELED=Cannot ${action} ${type}. The label is already defined on other interface ${LabeledNic} on the host. ERROR_CANNOT_RECOVERY_STORAGE_POOL_THERE_IS_ACTIVE_DATA_DOMAINS=Cannot recover Data Center with active Data Storage Domain in Data Center. @@ -1010,6 +1008,8 @@ SCHEDULING_HOST_FILTERED_REASON=The host ${hostName} did not satisfy ${filterType} filter ${filterName}. SCHEDULING_HOST_FILTERED_REASON_WITH_DETAIL=The host ${hostName} did not satisfy ${filterType} filter ${filterName} because ${detailMessage}. VAR__DETAIL__NETWORK_MISSING=$detailMessage network(s) ${networkNames} are missing +VAR__DETAIL__DISPLAY_NETWORK_MISSING=$detailMessage display network ${DisplayNetwork} was missing +VAR__DETAIL__DISPLAY_NETWORK_HAS_NO_BOOT_PROTOCOL=$detailMessage the display network ${DisplayNetwork} must have a DHCP or Static boot protocol when configured on a host VAR__DETAIL__AFFINITY_FAILED_POSITIVE=$detailMessage it did not match positive affinity rules ${affinityRules} VAR__DETAIL__AFFINITY_FAILED_NEGATIVE=$detailMessage it matched negative affinity rules ${affinityRules} VAR__DETAIL__LOW_CPU_LEVEL=$detailMessage its CPU level ${hostCPULevel} is lower than the VM requires ${vmCPULevel} diff --git a/frontend/webadmin/modules/webadmin/src/main/resources/org/ovirt/engine/ui/frontend/AppErrors.properties b/frontend/webadmin/modules/webadmin/src/main/resources/org/ovirt/engine/ui/frontend/AppErrors.properties index 33de6db..004be30 100644 --- a/frontend/webadmin/modules/webadmin/src/main/resources/org/ovirt/engine/ui/frontend/AppErrors.properties +++ b/frontend/webadmin/modules/webadmin/src/main/resources/org/ovirt/engine/ui/frontend/AppErrors.properties @@ -228,8 +228,7 @@ ACTION_TYPE_FAILED_VDS_VM_MEMORY=Cannot ${action} ${type}. There are no available running Hosts with sufficient memory in VM's Cluster . ACTION_TYPE_FAILED_VDS_VM_CPUS=Cannot ${action} ${type}. There are no available running Hosts with enough cores in VM's Cluster . ACTION_TYPE_FAILED_VDS_VM_CPU_LEVEL=Cannot ${action} ${type}. The host has lower CPU level than the VM was run with. -ACTION_TYPE_FAILED_VDS_VM_NETWORKS=Cannot ${action} ${type}. There are no available running Hosts with all the networks used by the VM. -ACTION_TYPE_FAILED_MISSING_DISPLAY_NETWORK=Cannot ${action} ${type}. There are no available running Hosts with the cluster's display network. +ACTION_TYPE_FAILED_NO_HA_VDS=Cannot ${action} ${type}. There are no available HA hosts in the VM's Cluster. CANNOT_MAINTENANCE_VDS_RUN_VMS_NO_OTHER_RUNNING_VDS=The following Hosts have running VMs and cannot be switched to maintenance mode: ${HostsList}.\nPlease ensure that the following Clusters have at least one Host in UP state: ${ClustersList}. ACTION_TYPE_FAILED_VDS_VM_VERSION=Cannot ${action} ${type}. VM's tools version (${toolsVersion}) mismatch with the Host's (${serverVersion}) version. ACTION_TYPE_FAILED_VDS_VM_SWAP=Cannot ${action} ${type}. Host swap percentage is above the defined threshold.\n\ @@ -521,7 +520,6 @@ NETWORK_LABEL_FORMAT_INVALID=Network label must be formed only from: English letters, numbers, hyphen or underscore. ACTION_TYPE_FAILED_NETWORK_ALREADY_LABELED=Cannot ${action} ${type}. The specified network is already labeled. ACTION_TYPE_FAILED_CANNOT_REMOVE_LABELED_NETWORK_FROM_NIC=Cannot ${action} ${type}. The following networks cannot be removed from the network interface since they are managed by the label: ${ACTION_TYPE_FAILED_CANNOT_REMOVE_LABELED_NETWORK_FROM_NIC_LIST}. Please remove the label from the network interface in order to remove the network. -ACTION_TYPE_FAILED_DISPLAY_NETWORK_HAS_NO_BOOT_PROTOCOL=Cannot ${action} ${type}. The display network ${DisplayNetwork} must have a DHCP or Static boot protocol when configured on a host. LABELED_NETWORK_ATTACHED_TO_WRONG_INTERFACE=Cannot ${action} ${type}. The following networks are already attached to a different interface: ${AssignedNetworks}. Please remove the networks in order to label the interface. OTHER_INTERFACE_ALREADY_LABELED=Cannot ${action} ${type}. The label is already defined on other interface ${LabeledNic} on the host. ERROR_CANNOT_RECOVERY_STORAGE_POOL_THERE_IS_ACTIVE_DATA_DOMAINS=Cannot recover Data Center with active Data Storage Domain in Data Center. @@ -1175,6 +1173,8 @@ SCHEDULING_HOST_FILTERED_REASON=The host ${hostName} did not satisfy ${filterType} filter ${filterName}. SCHEDULING_HOST_FILTERED_REASON_WITH_DETAIL=The host ${hostName} did not satisfy ${filterType} filter ${filterName} because ${detailMessage}. VAR__DETAIL__NETWORK_MISSING=$detailMessage network(s) ${networkNames} are missing +VAR__DETAIL__DISPLAY_NETWORK_MISSING=$detailMessage display network ${DisplayNetwork} was missing +VAR__DETAIL__DISPLAY_NETWORK_HAS_NO_BOOT_PROTOCOL=$detailMessage the display network ${DisplayNetwork} must have a DHCP or Static boot protocol when configured on a host VAR__DETAIL__AFFINITY_FAILED_POSITIVE=$detailMessage it did not match positive affinity rules ${affinityRules} VAR__DETAIL__AFFINITY_FAILED_NEGATIVE=$detailMessage it matched negative affinity rules ${affinityRules} VAR__DETAIL__LOW_CPU_LEVEL=$detailMessage its CPU level ${hostCPULevel} is lower than the VM requires ${vmCPULevel} -- To view, visit http://gerrit.ovirt.org/35499 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Ic60daf20842ba69457b293f451060e21381faf80 Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: ovirt-engine-3.5 Gerrit-Owner: Martin Sivák <msi...@redhat.com> _______________________________________________ Engine-patches mailing list Engine-patches@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-patches