Eli Mesika has uploaded a new change for review.
Change subject: core: add option not to fence if SD is active
......................................................................
core: add option not to fence if SD is active
Adding an option for a cluster to mark that a host should not be fenced
if one of its SDs is active.
This is done by adding a new flag to vds_groups that is exposed to the
UI Cluster New/Edit dialog under a new "Fence Settings" TAB
(Should be exposed in second phase to the API as well)
The engine should look at the cluster compatibility level and in the
case that it is 3.5 and above and the flag mentioned above is on call to
a new signature of fenceNode that has an additional parameter.
This parameter is actually a map of SDs and Host Id, for now , it will
be the same Id for all and this is done only as it as about to change in
next releases.
The new VDSM 3.5 getHostLeaseStatus API returns a dictionary of monitored
domains
UUIDs and host lease status for each domain, as reported by the cluster
lock. The caller will apply a fencing policy using this data to decide
if host is lively enough to prevent fencing.
Here is an example result: {'04e604d3-71eb-41e0-a8a3-74404bdd9d75':
'live', '09049dc6-2007-492e-afd9-3ec201775b2a': 'dead',
'20501ea5-cf6b-453a-b23d-a708c28cec1f': 'live',
'2b02c759-2e4a-4cf0-9b8e-37a6ec77f821': 'unavailable', ...
'fc348be8-18f4-42ff-8421-9043203e13a6': 'live'}
more details on teh VDSM support on that is available :
http://gerrit.ovirt.org/#/c/28873/
This patch implies also changes in the fenceNode implementation in the
VDSM side to call getHostLeaseStatus when the additional map parameter
is provided.
Change-Id: I638b534c460a813ad16a488f65b1541e78fc5984
Bug-Url: https://bugzilla.redhat.com/show_bug.cgi?id=1090799
Signed-off-by: Eli Mesika <[email protected]>
---
M
backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/VDSGroup.java
M
backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/VdsGroupDAODbFacadeImpl.java
M backend/manager/modules/dal/src/test/resources/fixtures.xml
M
frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/CommonApplicationConstants.java
M
frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/clusters/ClusterListModel.java
M
frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/clusters/ClusterModel.java
M
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/ApplicationConstants.java
M
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/cluster/ClusterPopupView.java
M
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/cluster/ClusterPopupView.ui.xml
M packaging/branding/ovirt.brand/patternfly-custom-hacks.css
A packaging/dbscripts/upgrade/03_05_0750_skip_host_with_active_SD_fencing.sql
M packaging/dbscripts/vds_groups_sp.sql
12 files changed, 110 insertions(+), 10 deletions(-)
git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/82/29482/1
diff --git
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/VDSGroup.java
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/VDSGroup.java
index 3767d40..6472260 100644
---
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/VDSGroup.java
+++
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/VDSGroup.java
@@ -102,6 +102,8 @@
private Set<VmRngDevice.Source> requiredRngSources;
+ private boolean skipHostWithActiveSDFencing =false;
+
public VDSGroup() {
migrateOnError = MigrateOnErrorOptions.YES;
name = "";
@@ -375,6 +377,14 @@
return requiredRngSources;
}
+ public boolean isSkipHostWithActiveSDFencing() {
+ return skipHostWithActiveSDFencing;
+ }
+
+ public void setSkipHostWithActiveSDFencing(boolean
skipHostWithActiveSDFencing) {
+ this.skipHostWithActiveSDFencing = skipHostWithActiveSDFencing;
+ }
+
@Override
public int hashCode() {
final int prime = 31;
@@ -406,6 +416,7 @@
result = prime * result + (serialNumberPolicy == null ? 0 :
serialNumberPolicy.hashCode());
result = prime * result + (customSerialNumber == null ? 0 :
customSerialNumber.hashCode());
result = prime * result + (groupHostsAndVms == null ? 0 :
groupHostsAndVms.hashCode());
+ result = prime * result + (skipHostWithActiveSDFencing ? 1231 : 1237);
return result;
}
@@ -459,7 +470,8 @@
&& serialNumberPolicy == other.serialNumberPolicy
&& ObjectUtils.objectsEqual(customSerialNumber,
other.customSerialNumber)
&& ObjectUtils.objectsEqual(groupHostsAndVms,
other.groupHostsAndVms)
- && ObjectUtils.objectsEqual(requiredRngSources,
other.requiredRngSources);
+ && ObjectUtils.objectsEqual(requiredRngSources,
other.requiredRngSources)
+ && skipHostWithActiveSDFencing ==
other.skipHostWithActiveSDFencing;
}
}
diff --git
a/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/VdsGroupDAODbFacadeImpl.java
b/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/VdsGroupDAODbFacadeImpl.java
index fa4e9ff..ac20628 100644
---
a/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/VdsGroupDAODbFacadeImpl.java
+++
b/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/VdsGroupDAODbFacadeImpl.java
@@ -228,7 +228,8 @@
.addValue("enable_ksm", group.isEnableKsm())
.addValue("spice_proxy", group.getSpiceProxy())
.addValue("serial_number_policy",
group.getSerialNumberPolicy() == null ? null :
group.getSerialNumberPolicy().getValue())
- .addValue("custom_serial_number",
group.getCustomSerialNumber());
+ .addValue("custom_serial_number",
group.getCustomSerialNumber())
+ .addValue("skip_host_with_active_sd_fencing",
group.isSkipHostWithActiveSDFencing());
return parameterSource;
}
@@ -289,6 +290,7 @@
entity.setSpiceProxy(rs.getString("spice_proxy"));
entity.setSerialNumberPolicy(SerialNumberPolicy.forValue((Integer)
rs.getObject("serial_number_policy")));
entity.setCustomSerialNumber(rs.getString("custom_serial_number"));
+
entity.setSkipHostWithActiveSDFencing(rs.getBoolean("skip_host_with_active_sd_fencing"));
return entity;
}
diff --git a/backend/manager/modules/dal/src/test/resources/fixtures.xml
b/backend/manager/modules/dal/src/test/resources/fixtures.xml
index e60c603..3eb70b5 100644
--- a/backend/manager/modules/dal/src/test/resources/fixtures.xml
+++ b/backend/manager/modules/dal/src/test/resources/fixtures.xml
@@ -679,6 +679,7 @@
<column>serial_number_policy</column>
<column>custom_serial_number</column>
<column>required_rng_sources</column>
+ <column>skip_host_with_active_sd_fencing</column>
<row>
<value>b399944a-81ab-4ec5-8266-e19ba7c3c9d1</value>
<value>rhel6.iscsi</value>
@@ -704,6 +705,7 @@
<null />
<null />
<value>RANDOM</value>
+ <value>false</value>
</row>
<row>
<value>b399944a-81ab-4ec5-8266-e19ba7c3c9d2</value>
@@ -730,6 +732,7 @@
<value>0</value>
<null />
<value></value>
+ <value>false</value>
</row>
<row>
<value>b399944a-81ab-4ec5-8266-e19ba7c3c9d3</value>
@@ -756,6 +759,7 @@
<value>1</value>
<null />
<value>HWRNG</value>
+ <value>false</value>
</row>
<row>
<value>0e57070e-2469-4b38-84a2-f111aaabd49d</value>
@@ -782,6 +786,7 @@
<value>2</value>
<value>my custom serial number</value>
<value>HWRNG,RANDOM</value>
+ <value>false</value>
</row>
<row>
<value>eba797fb-8e3b-4777-b63c-92e7a5957d7c</value>
@@ -808,6 +813,7 @@
<null />
<null />
<value>HWRNG,RANDOM</value>
+ <value>false</value>
</row>
<row>
<value>eba797fb-8e3b-4777-b63c-92e7a5957d7d</value>
@@ -834,6 +840,7 @@
<null />
<null />
<value>HWRNG,RANDOM</value>
+ <value>false</value>
</row>
<row>
<value>eba797fb-8e3b-4777-b63c-92e7a5957d7e</value>
@@ -860,6 +867,7 @@
<null />
<null />
<value>RANDOM</value>
+ <value>false</value>
</row>
<row>
<value>eba797fb-8e3b-4777-b63c-92e7a5957d7f</value>
@@ -886,6 +894,7 @@
<null />
<null />
<value>RANDOM</value>
+ <value>false</value>
</row>
<row>
<value>ae956031-6be2-43d6-bb8f-5191c9253314</value>
@@ -912,6 +921,7 @@
<null />
<null />
<value>RANDOM</value>
+ <value>true</value>
</row>
</table>
diff --git
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/CommonApplicationConstants.java
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/CommonApplicationConstants.java
index e0ae04a..a0bb6df 100644
---
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/CommonApplicationConstants.java
+++
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/CommonApplicationConstants.java
@@ -1868,4 +1868,8 @@
@DefaultStringValue("Required Random Number Generator sources:")
String requiredRngSources();
+
+ @DefaultStringValue("Skip host with active SD fencing:")
+ String skipHostWithActiveSDFencing();
+
}
diff --git
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/clusters/ClusterListModel.java
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/clusters/ClusterListModel.java
index 0a69594..7771ebd 100644
---
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/clusters/ClusterListModel.java
+++
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/clusters/ClusterListModel.java
@@ -747,6 +747,11 @@
if (model.getSpiceProxyEnabled().getEntity()) {
cluster.setSpiceProxy(model.getSpiceProxy().getEntity());
}
+
+ if (model.getSkipHostWithActiveSDFencingEnabled().getEntity()) {
+
cluster.setSkipHostWithActiveSDFencing(model.getSkipHostWithActiveSDFencingEnabled().getEntity());
+ }
+
cluster.setSerialNumberPolicy(model.getSerialNumberPolicy().getSelectedSerialNumberPolicy());
cluster.setCustomSerialNumber(model.getSerialNumberPolicy().getCustomSerialNumber().getEntity());
diff --git
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/clusters/ClusterModel.java
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/clusters/ClusterModel.java
index 4b8a948..3e07a9c 100644
---
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/clusters/ClusterModel.java
+++
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/clusters/ClusterModel.java
@@ -771,6 +771,15 @@
getOptimizationCustom_IsSelected().setEntity(true);
}
}
+ private EntityModel<Boolean> skipHostWithActiveSDFencingEnabled;
+
+ public EntityModel<Boolean> getSkipHostWithActiveSDFencingEnabled() {
+ return skipHostWithActiveSDFencingEnabled;
+ }
+
+ public void setSkipHostWithActiveSDFencingEnabled(EntityModel<Boolean>
skipHostWithActiveSDFencing) {
+ this.skipHostWithActiveSDFencingEnabled = skipHostWithActiveSDFencing;
+ }
public ClusterModel()
{
@@ -803,6 +812,9 @@
setSpiceProxy(new EntityModel<String>());
getSpiceProxy().setIsChangable(false);
+ setSkipHostWithActiveSDFencingEnabled(new EntityModel<Boolean>());
+ getSkipHostWithActiveSDFencingEnabled().setEntity(false);
+
getSkipHostWithActiveSDFencingEnabled().getEntityChangedEvent().addListener(this);
setEnableOvirtService(new EntityModel());
setEnableGlusterService(new EntityModel());
@@ -1135,6 +1147,12 @@
getSpiceProxy().setEntity(proxy);
}
+ private void initSkipHostWithActiveSDFencing() {
+ boolean isSkipHostFencingWithActiveSDAvailable =
getEntity().isSkipHostWithActiveSDFencing();
+
getSkipHostWithActiveSDFencingEnabled().setEntity(isSkipHostFencingWithActiveSDAvailable);
+
getSkipHostWithActiveSDFencingEnabled().setIsChangable(isSkipHostFencingWithActiveSDAvailable);
+ }
+
private void initImportCluster(boolean isEdit)
{
setGlusterHostAddress(new EntityModel<String>());
@@ -1215,6 +1233,7 @@
getComment().setEntity(getEntity().getComment());
initSpiceProxy();
+ initSkipHostWithActiveSDFencing();
setMemoryOverCommit(getEntity().getmax_vds_memory_over_commit());
@@ -1281,6 +1300,9 @@
if (senderEntityModel == getSpiceProxyEnabled()) {
getSpiceProxy().setIsChangable(getSpiceProxyEnabled().getEntity());
} else if ((Boolean) senderEntityModel.getEntity()) {
+ if(senderEntityModel ==
getSkipHostWithActiveSDFencingEnabled()) {
+
+ }
if (senderEntityModel == getOptimizationNone_IsSelected())
{
getOptimizationForServer_IsSelected().setEntity(false);
diff --git
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/ApplicationConstants.java
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/ApplicationConstants.java
index 4759eea..04eba6a 100644
---
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/ApplicationConstants.java
+++
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/ApplicationConstants.java
@@ -768,7 +768,8 @@
@DefaultStringValue("CPU Threads")
String clusterPopupCpuThreadsPanelTitle();
- @DefaultStringValue("Allow guests to use host threads as virtual CPU
cores, utilizing AMD Clustered MultiThreading or Intel" +
+ @DefaultStringValue("Allow guests to use host threads as virtual CPU
cores, utilizing AMD Clustered MultiThreading or Intel"
+ +
" Hyper-Threading technology on the virtualization host. Enabling
this option may be useful for less" +
" CPU-intensive workloads, or to run guests with CPU
configurations that would otherwise be restricted.")
String clusterPopupCpuThreadsInfo();
@@ -796,6 +797,9 @@
@DefaultStringValue("Define SPICE proxy for Cluster")
String clusterSpiceProxyEnable();
+
+ @DefaultStringValue("Skip Host with active SD fencing")
+ String skipHostWithActiveSDFencing();
@DefaultStringValue("Name")
String bookmarkPopupNameLabel();
@@ -3528,7 +3532,7 @@
@DefaultStringValue("Remove brick in progress but status unknown. Unable
to fetch the status at the moment.")
String removeBrickStatusUnknown();
- //Volume Rebalance Status Table Columns
+ // Volume Rebalance Status Table Columns
@DefaultStringValue("Host")
String rebalanceSessionHost();
@@ -3603,6 +3607,9 @@
@DefaultStringValue("Console")
String consoleTabLabel();
+
+ @DefaultStringValue("Fence Settings")
+ String fenceSettingsTabLabel();
@DefaultStringValue("Name")
String nameAffinityGroup();
@@ -3692,7 +3699,7 @@
@DefaultStringValue("Attached by label")
String attachedByLabel();
- //Gluster Volume Profiling
+ // Gluster Volume Profiling
@DefaultStringValue("File operation")
String fileOperation();
@@ -3740,4 +3747,7 @@
@DefaultStringValue("Could not fetch brick profile stats")
String brickProfileErrorMessage();
+
+ @DefaultStringValue("This will skip fencing operations on a Host that has
active Storage Domains")
+ String skipHostWithActiveSDFencingInfo();
}
diff --git
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/cluster/ClusterPopupView.java
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/cluster/ClusterPopupView.java
index 5cda48e..2d9ddd5 100644
---
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/cluster/ClusterPopupView.java
+++
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/cluster/ClusterPopupView.java
@@ -335,6 +335,10 @@
DialogTab consoleTab;
@UiField
+ @Ignore
+ DialogTab fenceSettingsTab;
+
+ @UiField
@Path(value = "spiceProxy.entity")
@WithElementId
StringEntityModelTextBoxEditor spiceProxyEditor;
@@ -346,6 +350,13 @@
@Path(value = "spiceProxyEnabled.entity")
@WithElementId
EntityModelCheckBoxOnlyEditor spiceProxyOverrideEnabled;
+
+ @UiField(provided = true)
+ InfoIcon skipHostWithActiveSDFencingEnabledCheckboxWithInfoIcon;
+
+ @Path(value = "skipHostWithActiveSDFencingEnabled.entity")
+ @WithElementId
+ EntityModelCheckBoxEditor skipHostWithActiveSDFencingEnabledEditor;
private final Driver driver = GWT.create(Driver.class);
@@ -448,8 +459,10 @@
allowOverbookingEditor.setLabel(constants.allowOverbookingLabel());
spiceProxyEditor.setLabel(constants.overriddenSpiceProxyAddress());
+
skipHostWithActiveSDFencingEnabledEditor.setLabel(constants.skipHostWithActiveSDFencing());
consoleTab.setLabel(constants.consoleTabLabel());
+ fenceSettingsTab.setLabel(constants.fenceSettingsTabLabel());
}
private void initRadioButtonEditors() {
@@ -531,6 +544,8 @@
rngRandomSourceRequired = new EntityModelCheckBoxEditor(Align.RIGHT);
rngHwrngSourceRequired = new EntityModelCheckBoxEditor(Align.RIGHT);
+
+ skipHostWithActiveSDFencingEnabledEditor = new
EntityModelCheckBoxEditor(Align.RIGHT);
}
private void initInfoIcons(ApplicationResources resources,
ApplicationConstants constants, ApplicationTemplates templates) {
@@ -546,6 +561,8 @@
label.setWidth("250px"); //$NON-NLS-1$
spiceProxyOverrideEnabled = new EntityModelCheckBoxOnlyEditor();
spiceProxyEnabledCheckboxWithInfoIcon = new
EntityModelWidgetWithInfo<String>(label, spiceProxyOverrideEnabled);
+
+ skipHostWithActiveSDFencingEnabledCheckboxWithInfoIcon = new
InfoIcon(templates.italicFixedWidth("465px",
constants.skipHostWithActiveSDFencingInfo()), resources); //$NON-NLS-1$
}
@Override
diff --git
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/cluster/ClusterPopupView.ui.xml
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/cluster/ClusterPopupView.ui.xml
index e0fc5dd..c0da6a8 100644
---
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/cluster/ClusterPopupView.ui.xml
+++
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/popup/cluster/ClusterPopupView.ui.xml
@@ -268,6 +268,17 @@
</t:content>
</t:DialogTab>
</t:tab>
+ <t:tab>
+ <t:DialogTab ui:field="fenceSettingsTab">
+ <t:content>
+ <g:FlowPanel
addStyleNames="cvp_fenceSettingsContent_pfly_fix">
+ <ge:EntityModelCheckBoxEditor
ui:field="skipHostWithActiveSDFencingEnabled"
addStyleNames="cpv_enableOvirtService_pfly_fix" />
+ <d:InfoIcon
ui:field="skipHostWithActiveSDFencingEnabledCheckboxWithInfoIcon"
addStyleNames="{style.panelInfo} cpv_panelInfo_pfly_fix" />
+ </g:FlowPanel>
+ </t:content>
+ </t:DialogTab>
+ </t:tab>
+
</t:DialogTabPanel>
</d:content>
</d:SimpleDialogPanel>
diff --git a/packaging/branding/ovirt.brand/patternfly-custom-hacks.css
b/packaging/branding/ovirt.brand/patternfly-custom-hacks.css
index b69cf6b..51748e9 100644
--- a/packaging/branding/ovirt.brand/patternfly-custom-hacks.css
+++ b/packaging/branding/ovirt.brand/patternfly-custom-hacks.css
@@ -223,6 +223,9 @@
position: relative;
top: -5px;
}
+.cvp_fenceSettingsContent_pfly_fix {
+ padding-top: 5px;
+}
.hpv_pmVariantsEditor_pfly_fix {
padding-bottom: 10px;
padding-top: 5px;
diff --git
a/packaging/dbscripts/upgrade/03_05_0750_skip_host_with_active_SD_fencing.sql
b/packaging/dbscripts/upgrade/03_05_0750_skip_host_with_active_SD_fencing.sql
new file mode 100644
index 0000000..705e730
--- /dev/null
+++
b/packaging/dbscripts/upgrade/03_05_0750_skip_host_with_active_SD_fencing.sql
@@ -0,0 +1 @@
+SELECT fn_db_add_column('vds_groups', 'skip_host_with_active_sd_fencing',
'boolean DEFAULT false');
diff --git a/packaging/dbscripts/vds_groups_sp.sql
b/packaging/dbscripts/vds_groups_sp.sql
index 3e5169f..24d0ef5 100644
--- a/packaging/dbscripts/vds_groups_sp.sql
+++ b/packaging/dbscripts/vds_groups_sp.sql
@@ -36,16 +36,18 @@
v_enable_ksm BOOLEAN,
v_serial_number_policy SMALLINT,
v_custom_serial_number VARCHAR(255),
- v_required_rng_sources varchar(255))
+ v_required_rng_sources varchar(255),
+ v_skip_host_with_active_sd_fencing boolean)
RETURNS VOID
AS $procedure$
BEGIN
INSERT INTO vds_groups(vds_group_id,description, name,
free_text_comment, cpu_name, storage_pool_id, max_vds_memory_over_commit,
count_threads_as_cores, compatibility_version,
transparent_hugepages, migrate_on_error, virt_service,
gluster_service, tunnel_migration, emulated_machine, detect_emulated_machine,
trusted_service, ha_reservation, optional_reason, cluster_policy_id,
- cluster_policy_custom_properties, enable_balloon, architecture,
optimization_type, spice_proxy, enable_ksm, serial_number_policy,
custom_serial_number, required_rng_sources)
+ cluster_policy_custom_properties, enable_balloon, architecture,
optimization_type, spice_proxy, enable_ksm, serial_number_policy,
custom_serial_number, required_rng_sources,
+ skip_host_with_active_sd_fencing)
VALUES(v_vds_group_id,v_description, v_name, v_free_text_comment,
v_cpu_name, v_storage_pool_id, v_max_vds_memory_over_commit,
v_count_threads_as_cores, v_compatibility_version,
v_transparent_hugepages, v_migrate_on_error, v_virt_service,
v_gluster_service, v_tunnel_migration, v_emulated_machine,
v_detect_emulated_machine, v_trusted_service, v_ha_reservation,
v_optional_reason, v_cluster_policy_id, v_cluster_policy_custom_properties,
v_enable_balloon,
- v_architecture, v_optimization_type, v_spice_proxy, v_enable_ksm,
v_serial_number_policy, v_custom_serial_number, v_required_rng_sources);
+ v_architecture, v_optimization_type, v_spice_proxy, v_enable_ksm,
v_serial_number_policy, v_custom_serial_number, v_required_rng_sources,
v_skip_host_with_active_sd_fencing);
END; $procedure$
LANGUAGE plpgsql;
@@ -81,7 +83,8 @@
v_enable_ksm BOOLEAN,
v_serial_number_policy SMALLINT,
v_custom_serial_number VARCHAR(255),
- v_required_rng_sources varchar(255))
+ v_required_rng_sources varchar(255),
+ v_skip_host_with_active_sd_fencing boolean)
RETURNS VOID
--The [vds_groups] table doesn't have a timestamp column. Optimistic
concurrency logic cannot be generated
@@ -99,7 +102,7 @@
cluster_policy_custom_properties = v_cluster_policy_custom_properties,
enable_balloon = v_enable_balloon, architecture = v_architecture,
optimization_type = v_optimization_type, spice_proxy = v_spice_proxy,
enable_ksm = v_enable_ksm,
serial_number_policy = v_serial_number_policy, custom_serial_number =
v_custom_serial_number,
- required_rng_sources = v_required_rng_sources
+ required_rng_sources = v_required_rng_sources,
skip_host_with_active_sd_fencing = v_skip_host_with_active_sd_fencing
WHERE vds_group_id = v_vds_group_id;
END; $procedure$
LANGUAGE plpgsql;
--
To view, visit http://gerrit.ovirt.org/29482
To unsubscribe, visit http://gerrit.ovirt.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I638b534c460a813ad16a488f65b1541e78fc5984
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Eli Mesika <[email protected]>
_______________________________________________
Engine-patches mailing list
[email protected]
http://lists.ovirt.org/mailman/listinfo/engine-patches