You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by ad...@apache.org on 2017/11/24 12:39:59 UTC
[17/39] ambari git commit: AMBARI-22244. Use service type instead of
service name - addendum (adoroszlai)
AMBARI-22244. Use service type instead of service name - addendum (adoroszlai)
Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/2b4c3427
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/2b4c3427
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/2b4c3427
Branch: refs/heads/branch-feature-AMBARI-14714-blueprintv2
Commit: 2b4c342719980a3fb52b61a3d8ba4bc2747aaa78
Parents: 3d0619a
Author: Attila Doroszlai <ad...@hortonworks.com>
Authored: Thu Nov 16 19:00:42 2017 +0100
Committer: Doroszlai, Attila <ad...@hortonworks.com>
Committed: Fri Nov 24 13:30:45 2017 +0100
----------------------------------------------------------------------
.../checks/ServiceCheckValidityCheck.java | 7 ++++---
.../internal/ServiceResourceProvider.java | 9 ++++----
.../serveraction/upgrades/ConfigureAction.java | 5 +++--
.../ambari/server/state/ConfigHelper.java | 14 ++++++-------
.../ambari/server/state/ConfigMergeHelper.java | 4 ++--
.../ambari/server/state/UpgradeHelper.java | 22 ++++++++++----------
6 files changed, 31 insertions(+), 30 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ambari/blob/2b4c3427/ambari-server/src/main/java/org/apache/ambari/server/checks/ServiceCheckValidityCheck.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/checks/ServiceCheckValidityCheck.java b/ambari-server/src/main/java/org/apache/ambari/server/checks/ServiceCheckValidityCheck.java
index 2582c71..1126424 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/checks/ServiceCheckValidityCheck.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/checks/ServiceCheckValidityCheck.java
@@ -101,11 +101,12 @@ public class ServiceCheckValidityCheck extends AbstractCheckDescriptor {
continue;
}
StackId stackId = service.getDesiredStackId();
- boolean isServiceWitNoConfigs = ambariMetaInfo.get().isServiceWithNoConfigs(stackId.getStackName(), stackId.getStackVersion(), service.getName());
+ String serviceType = service.getServiceType();
+ boolean isServiceWitNoConfigs = ambariMetaInfo.get().isServiceWithNoConfigs(stackId.getStackName(), stackId.getStackVersion(), serviceType);
if (isServiceWitNoConfigs){
- LOG.info(String.format("%s in %s version %s does not have customizable configurations. Skip checking service configuration history.", service.getName(), stackId.getStackName(), stackId.getStackVersion()));
+ LOG.info("{} in {} version {} does not have customizable configurations. Skip checking service configuration history.", serviceType, stackId.getStackName(), stackId.getStackVersion());
} else {
- LOG.info(String.format("%s in %s version %s has customizable configurations. Check service configuration history.", service.getName(), stackId.getStackName(), stackId.getStackVersion()));
+ LOG.info("{} in {} version {} has customizable configurations. Check service configuration history.", serviceType, stackId.getStackName(), stackId.getStackVersion());
ServiceConfigEntity lastServiceConfig = serviceConfigDAO.getLastServiceConfig(clusterId, service.getServiceId());
lastServiceConfigUpdates.put(service.getName(), lastServiceConfig.getCreateTimestamp());
}
http://git-wip-us.apache.org/repos/asf/ambari/blob/2b4c3427/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ServiceResourceProvider.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ServiceResourceProvider.java b/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ServiceResourceProvider.java
index 931035d..e353b3c 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ServiceResourceProvider.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ServiceResourceProvider.java
@@ -276,8 +276,7 @@ public class ServiceResourceProvider extends AbstractControllerResourceProvider
setResourceProperty(resource, SERVICE_SERVICE_TYPE_PROPERTY_ID,
response.getServiceType(), requestedIds);
setResourceProperty(resource, SERVICE_SERVICE_STATE_PROPERTY_ID,
- calculateServiceState(response.getClusterName(), response.getServiceName()),
- requestedIds);
+ calculateServiceState(response.getClusterName(), response.getServiceType(), response.getServiceName()), requestedIds);
setResourceProperty(resource, SERVICE_MAINTENANCE_STATE_PROPERTY_ID,
response.getMaintenanceState(), requestedIds);
setResourceProperty(resource, SERVICE_CREDENTIAL_STORE_SUPPORTED_PROPERTY_ID,
@@ -1004,9 +1003,9 @@ public class ServiceResourceProvider extends AbstractControllerResourceProvider
}
// calculate the service state, accounting for the state of the host components
- private String calculateServiceState(String clusterName, String serviceName) {
- ServiceCalculatedState serviceCalculatedState = ServiceCalculatedStateFactory.getServiceStateProvider(serviceName);
- return serviceCalculatedState.getState(clusterName, serviceName).toString();
+ private State calculateServiceState(String clusterName, String serviceType, String serviceName) {
+ ServiceCalculatedState serviceCalculatedState = ServiceCalculatedStateFactory.getServiceStateProvider(serviceType);
+ return serviceCalculatedState.getState(clusterName, serviceName);
}
/**
http://git-wip-us.apache.org/repos/asf/ambari/blob/2b4c3427/ambari-server/src/main/java/org/apache/ambari/server/serveraction/upgrades/ConfigureAction.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/serveraction/upgrades/ConfigureAction.java b/ambari-server/src/main/java/org/apache/ambari/server/serveraction/upgrades/ConfigureAction.java
index 6bb248e..1639e40 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/serveraction/upgrades/ConfigureAction.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/serveraction/upgrades/ConfigureAction.java
@@ -43,6 +43,7 @@ import org.apache.ambari.server.state.ConfigMergeHelper;
import org.apache.ambari.server.state.ConfigMergeHelper.ThreeWayValue;
import org.apache.ambari.server.state.DesiredConfig;
import org.apache.ambari.server.state.PropertyInfo;
+import org.apache.ambari.server.state.Service;
import org.apache.ambari.server.state.StackId;
import org.apache.ambari.server.state.UpgradeContext;
import org.apache.ambari.server.state.stack.upgrade.ConfigUpgradeChangeDefinition.ConfigurationKeyValue;
@@ -596,9 +597,9 @@ public class ConfigureAction extends AbstractUpgradeServerAction {
// has the correct config type (ie oozie-site or hdfs-site) then add it to
// the list of original stack propertiess
Set<String> stackPropertiesForType = new HashSet<>(50);
- for (String serviceName : cluster.getServices().keySet()) {
+ for (Service service : cluster.getServices().values()) {
Set<PropertyInfo> serviceProperties = m_ambariMetaInfo.get().getServiceProperties(
- oldStack.getStackName(), oldStack.getStackVersion(), serviceName);
+ oldStack.getStackName(), oldStack.getStackVersion(), service.getServiceType());
for (PropertyInfo property : serviceProperties) {
String type = ConfigHelper.fileNameToConfigType(property.getFilename());
http://git-wip-us.apache.org/repos/asf/ambari/blob/2b4c3427/ambari-server/src/main/java/org/apache/ambari/server/state/ConfigHelper.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/state/ConfigHelper.java b/ambari-server/src/main/java/org/apache/ambari/server/state/ConfigHelper.java
index e999e24..e9310a3 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/state/ConfigHelper.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/state/ConfigHelper.java
@@ -512,7 +512,7 @@ public class ConfigHelper {
Set<String> result = new HashSet<>();
for (Service service : clusters.getCluster(clusterName).getServices().values()) {
- Set<PropertyInfo> stackProperties = ambariMetaInfo.getServiceProperties(stack.getName(), stack.getVersion(), service.getName());
+ Set<PropertyInfo> stackProperties = ambariMetaInfo.getServiceProperties(stack.getName(), stack.getVersion(), service.getServiceType());
Set<PropertyInfo> stackLevelProperties = ambariMetaInfo.getStackProperties(stack.getName(), stack.getVersion());
stackProperties.addAll(stackLevelProperties);
@@ -543,7 +543,7 @@ public class ConfigHelper {
StackInfo stack = ambariMetaInfo.getStack(stackId.getStackName(), stackId.getStackVersion());
Map<String, Map<String, String>> result = new HashMap<>();
Map<String, String> passwordProperties;
- Set<PropertyInfo> serviceProperties = ambariMetaInfo.getServiceProperties(stack.getName(), stack.getVersion(), service.getName());
+ Set<PropertyInfo> serviceProperties = ambariMetaInfo.getServiceProperties(stack.getName(), stack.getVersion(), service.getServiceType());
for (PropertyInfo serviceProperty : serviceProperties) {
if (serviceProperty.getPropertyTypes().contains(propertyType)) {
if (!serviceProperty.getPropertyValueAttributes().isKeyStore()) {
@@ -846,7 +846,7 @@ public class ConfigHelper {
stackId.getStackVersion());
for (ServiceInfo serviceInfo : stack.getServices()) {
- Set<PropertyInfo> serviceProperties = ambariMetaInfo.getServiceProperties(stack.getName(), stack.getVersion(), serviceInfo.getName());
+ Set<PropertyInfo> serviceProperties = ambariMetaInfo.getServiceProperties(stack.getName(), stack.getVersion(), serviceInfo.getServiceType());
Set<PropertyInfo> stackProperties = ambariMetaInfo.getStackProperties(stack.getName(), stack.getVersion());
serviceProperties.addAll(stackProperties);
@@ -922,7 +922,7 @@ public class ConfigHelper {
StackInfo stack = ambariMetaInfo.getStack(stackId.getStackName(), stackId.getStackVersion());
for (ServiceInfo serviceInfo : stack.getServices()) {
- Set<PropertyInfo> serviceProperties = ambariMetaInfo.getServiceProperties(stack.getName(), stack.getVersion(), serviceInfo.getName());
+ Set<PropertyInfo> serviceProperties = ambariMetaInfo.getServiceProperties(stack.getName(), stack.getVersion(), serviceInfo.getServiceType());
for (PropertyInfo stackProperty : serviceProperties) {
String stackPropertyConfigType = fileNameToConfigType(stackProperty.getFilename());
@@ -1237,13 +1237,13 @@ public class ConfigHelper {
*
* @param stack
* the stack to pull stack-values from (not {@code null})
- * @param serviceName
+ * @param stackServiceName
* the service name {@code null}).
* @return a mapping of configuration type to map of key/value pairs for the
* default configurations.
* @throws AmbariException
*/
- public Map<String, Map<String, String>> getDefaultProperties(StackId stack, String serviceName)
+ public Map<String, Map<String, String>> getDefaultProperties(StackId stack, String stackServiceName)
throws AmbariException {
Map<String, Map<String, String>> defaultPropertiesByType = new HashMap<>();
@@ -1264,7 +1264,7 @@ public class ConfigHelper {
// for every installed service, populate the default service properties
Set<org.apache.ambari.server.state.PropertyInfo> serviceConfigurationProperties = ambariMetaInfo.getServiceProperties(
- stack.getStackName(), stack.getStackVersion(), serviceName);
+ stack.getStackName(), stack.getStackVersion(), stackServiceName);
// !!! use new stack as the basis
for (PropertyInfo serviceDefaultProperty : serviceConfigurationProperties) {
http://git-wip-us.apache.org/repos/asf/ambari/blob/2b4c3427/ambari-server/src/main/java/org/apache/ambari/server/state/ConfigMergeHelper.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/state/ConfigMergeHelper.java b/ambari-server/src/main/java/org/apache/ambari/server/state/ConfigMergeHelper.java
index 36918cc..9bede20 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/state/ConfigMergeHelper.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/state/ConfigMergeHelper.java
@@ -63,11 +63,11 @@ public class ConfigMergeHelper {
Service service = cluster.getService(serviceName);
oldStack = service.getDesiredStackId();
Set<PropertyInfo> oldStackProperties = m_ambariMetaInfo.get().getServiceProperties(
- oldStack.getStackName(), oldStack.getStackVersion(), serviceName);
+ oldStack.getStackName(), oldStack.getStackVersion(), service.getServiceType());
addToMap(oldMap, oldStackProperties);
Set<PropertyInfo> newStackProperties = m_ambariMetaInfo.get().getServiceProperties(
- targetStack.getStackName(), targetStack.getStackVersion(), serviceName);
+ targetStack.getStackName(), targetStack.getStackVersion(), service.getServiceType());
addToMap(newMap, newStackProperties);
}
http://git-wip-us.apache.org/repos/asf/ambari/blob/2b4c3427/ambari-server/src/main/java/org/apache/ambari/server/state/UpgradeHelper.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/state/UpgradeHelper.java b/ambari-server/src/main/java/org/apache/ambari/server/state/UpgradeHelper.java
index a6c6507..1a4c27c 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/state/UpgradeHelper.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/state/UpgradeHelper.java
@@ -971,28 +971,29 @@ public class UpgradeHelper {
ConfigHelper configHelper = m_configHelperProvider.get();
// downgrade is easy - just remove the new and make the old current
+ Service service = cluster.getService(null, serviceName);
if (direction == Direction.DOWNGRADE) {
//TODO pass serviceGroupName
- cluster.applyLatestConfigurations(targetStackId, cluster.getService(null, serviceName).getServiceId());
+ cluster.applyLatestConfigurations(targetStackId, service.getServiceId());
continue;
}
// the auto-merge must take read-only properties even if they have changed
// - if the properties was read-only in the source stack, then we must
// take the new stack's value
- Map<String, Set<String>> readOnlyProperties = getReadOnlyProperties(sourceStackId, serviceName);
+ Map<String, Set<String>> readOnlyProperties = getReadOnlyProperties(sourceStackId, service.getServiceType());
// upgrade is a bit harder - we have to merge new stack configurations in
// populate a map of default configurations for the service on the old
// stack (this is used when determining if a property has been
- // customized and should be overriden with the new stack value)
+ // customized and should be overridden with the new stack value)
Map<String, Map<String, String>> oldServiceDefaultConfigsByType = configHelper.getDefaultProperties(
- sourceStackId, serviceName);
+ sourceStackId, service.getServiceType());
// populate a map with default configurations from the new stack
Map<String, Map<String, String>> newServiceDefaultConfigsByType = configHelper.getDefaultProperties(
- targetStackId, serviceName);
+ targetStackId, service.getServiceType());
if (null == oldServiceDefaultConfigsByType || null == newServiceDefaultConfigsByType) {
continue;
@@ -1005,7 +1006,7 @@ public class UpgradeHelper {
List<ServiceConfigEntity> latestServiceConfigs = m_serviceConfigDAO.getLastServiceConfigsForService(
//TODO pass serviceGroupName
- cluster.getClusterId(), cluster.getService(null, serviceName).getServiceId());
+ cluster.getClusterId(), service.getServiceId());
for (ServiceConfigEntity serviceConfig : latestServiceConfigs) {
List<ClusterConfigEntity> existingConfigurations = serviceConfig.getClusterConfigEntities();
@@ -1161,13 +1162,12 @@ public class UpgradeHelper {
*
* @param stackId
* the stack to get read-only properties for (not {@code null}).
- * @param serviceName
- * the namee of the service (not {@code null}).
+ * @param stackServiceName
+ * the name of the service (not {@code null}).
* @return a map of configuration type to set of property names which are
* read-only
- * @throws AmbariException
*/
- private Map<String, Set<String>> getReadOnlyProperties(StackId stackId, String serviceName)
+ private Map<String, Set<String>> getReadOnlyProperties(StackId stackId, String stackServiceName)
throws AmbariException {
Map<String, Set<String>> readOnlyProperties = new HashMap<>();
@@ -1177,7 +1177,7 @@ public class UpgradeHelper {
stackId.getStackName(), stackId.getStackVersion());
Set<PropertyInfo> serviceProperties = m_ambariMetaInfoProvider.get().getServiceProperties(
- stackId.getStackName(), stackId.getStackVersion(), serviceName);
+ stackId.getStackName(), stackId.getStackVersion(), stackServiceName);
if (CollectionUtils.isNotEmpty(stackProperties)) {
properties.addAll(stackProperties);