Sergey Gotliv has uploaded a new change for review. Change subject: engine: Disable iSCSI multipathing for datacenters < 3.4 ......................................................................
engine: Disable iSCSI multipathing for datacenters < 3.4 VDSM introduced a few bug fixes in 3.4 to support configuration of iSCSI multipathing, therefore this feature is allowed for 3.4 and up datacenters. Change-Id: I623cd917ca0871a9d3d09c2d30ec2dfc114d383e Signed-off-by: Sergey Gotliv <[email protected]> --- M backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/FeatureSupported.java M backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/config/ConfigValues.java M backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/queries/ConfigurationValues.java M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/DataCenterListModel.java M packaging/dbscripts/upgrade/pre_upgrade/0000_config.sql 5 files changed, 42 insertions(+), 14 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/62/25962/1 diff --git a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/FeatureSupported.java b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/FeatureSupported.java index ee4ee3e..d0ced6d 100644 --- a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/FeatureSupported.java +++ b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/FeatureSupported.java @@ -296,4 +296,13 @@ public static boolean ovfStoreOnAnyDomain(Version version) { return supportedInConfig(ConfigValues.OvfStoreOnAnyDomain, version); } + + /** + * @param version + * Compatibility version to check for. + * @return <code>true</code> if iSCSI multipathing is supported for the given version. + */ + public static boolean isIscsiMultipathingSupported(Version version) { + return supportedInConfig(ConfigValues.IscsiMultipathingSupported, version); + } } diff --git a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/config/ConfigValues.java b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/config/ConfigValues.java index 889b559..7677b6c 100644 --- a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/config/ConfigValues.java +++ b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/config/ConfigValues.java @@ -1678,5 +1678,9 @@ @DefaultValueAttribute("2") StorageDomainOvfStoreCount, + @TypeConverterAttribute(Boolean.class) + @DefaultValueAttribute("true") + IscsiMultipathingSupported, + Invalid; } diff --git a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/queries/ConfigurationValues.java b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/queries/ConfigurationValues.java index 45bd4ad..fb46f72 100644 --- a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/queries/ConfigurationValues.java +++ b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/queries/ConfigurationValues.java @@ -118,7 +118,8 @@ IsMigrationSupported(ConfigAuthType.User), IsMemorySnapshotSupported(ConfigAuthType.User), IsSuspendSupported(ConfigAuthType.User), - SerialNumberPolicySupported; + SerialNumberPolicySupported, + IscsiMultipathingSupported; public static enum ConfigAuthType { Admin, diff --git a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/DataCenterListModel.java b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/DataCenterListModel.java index 815d1da..2b1976c 100644 --- a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/DataCenterListModel.java +++ b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/datacenters/DataCenterListModel.java @@ -22,6 +22,7 @@ import org.ovirt.engine.core.common.businessentities.StorageType; import org.ovirt.engine.core.common.interfaces.SearchType; import org.ovirt.engine.core.common.mode.ApplicationMode; +import org.ovirt.engine.core.common.queries.ConfigurationValues; import org.ovirt.engine.core.common.queries.IdQueryParameters; import org.ovirt.engine.core.common.queries.SearchParameters; import org.ovirt.engine.core.common.queries.VdcQueryReturnValue; @@ -907,24 +908,31 @@ } private void updateIscsiBondListAvailability(StoragePool storagePool) { - AsyncDataProvider.getStorageConnectionsByDataCenterIdAndStorageType(new AsyncQuery(this, new INewAsyncCallback() { + boolean iscsiBondSupported = (Boolean) AsyncDataProvider.getConfigValuePreConverted( + ConfigurationValues.IscsiMultipathingSupported, + storagePool.getcompatibility_version().getValue() + ); - @Override - public void onSuccess(Object model, Object returnValue) { - boolean hasIscsiStorage = false; + if (iscsiBondSupported) { + AsyncDataProvider.getStorageConnectionsByDataCenterIdAndStorageType(new AsyncQuery(this, new INewAsyncCallback() { - ArrayList<StorageServerConnections> connections = (ArrayList<StorageServerConnections>) returnValue; + @Override + public void onSuccess(Object model, Object returnValue) { + boolean hasIscsiStorage = false; - for (StorageServerConnections connection : connections) { - if (connection.getstorage_type() == StorageType.ISCSI) { - hasIscsiStorage = true; - break; + ArrayList<StorageServerConnections> connections = (ArrayList<StorageServerConnections>) returnValue; + + for (StorageServerConnections connection : connections) { + if (connection.getstorage_type() == StorageType.ISCSI) { + hasIscsiStorage = true; + break; + } } - } - iscsiBondListModel.setIsAvailable(hasIscsiStorage); - } - }), storagePool.getId(), StorageType.ISCSI); + iscsiBondListModel.setIsAvailable(hasIscsiStorage); + } + }), storagePool.getId(), StorageType.ISCSI); + } } @Override diff --git a/packaging/dbscripts/upgrade/pre_upgrade/0000_config.sql b/packaging/dbscripts/upgrade/pre_upgrade/0000_config.sql index e623f56..04b5948 100644 --- a/packaging/dbscripts/upgrade/pre_upgrade/0000_config.sql +++ b/packaging/dbscripts/upgrade/pre_upgrade/0000_config.sql @@ -233,12 +233,18 @@ select fn_db_add_config_value('SerialNumberPolicySupported','false','3.2'); select fn_db_add_config_value('SerialNumberPolicySupported','false','3.3'); select fn_db_add_config_value('SerialNumberPolicySupported','false','3.4'); + select fn_db_add_config_value('OvfStoreOnAnyDomain','false','3.0'); select fn_db_add_config_value('OvfStoreOnAnyDomain','false','3.1'); select fn_db_add_config_value('OvfStoreOnAnyDomain','false','3.2'); select fn_db_add_config_value('OvfStoreOnAnyDomain','false','3.3'); select fn_db_add_config_value('OvfStoreOnAnyDomain','false','3.4'); +select fn_db_add_config_value('IscsiMultipathingSupported','false','3.0'); +select fn_db_add_config_value('IscsiMultipathingSupported','false','3.1'); +select fn_db_add_config_value('IscsiMultipathingSupported','false','3.2'); +select fn_db_add_config_value('IscsiMultipathingSupported','false','3.3'); + -- by default use no proxy select fn_db_add_config_value('SpiceProxyDefault','','general'); -- To view, visit http://gerrit.ovirt.org/25962 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I623cd917ca0871a9d3d09c2d30ec2dfc114d383e Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Sergey Gotliv <[email protected]> _______________________________________________ Engine-patches mailing list [email protected] http://lists.ovirt.org/mailman/listinfo/engine-patches
