You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by nc...@apache.org on 2015/02/25 16:09:35 UTC
[1/2] ambari git commit: AMBARI-9780. RU: upgrade checks need changes
(ncole)
Repository: ambari
Updated Branches:
refs/heads/trunk b1b585747 -> 5a2dbeab0
http://git-wip-us.apache.org/repos/asf/ambari/blob/5a2dbeab/ambari-server/src/test/java/org/apache/ambari/server/checks/ServicesUpCheckTest.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/checks/ServicesUpCheckTest.java b/ambari-server/src/test/java/org/apache/ambari/server/checks/ServicesUpCheckTest.java
index ad60f1c..65b8e7f 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/checks/ServicesUpCheckTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/checks/ServicesUpCheckTest.java
@@ -19,6 +19,7 @@ package org.apache.ambari.server.checks;
import java.util.Collections;
+import org.apache.ambari.server.api.services.AmbariMetaInfo;
import org.apache.ambari.server.controller.PrereqCheckRequest;
import org.apache.ambari.server.state.Cluster;
import org.apache.ambari.server.state.Clusters;
@@ -54,6 +55,15 @@ public class ServicesUpCheckTest {
return clusters;
}
};
+
+ servicesUpCheck.ambariMetaInfo = new Provider<AmbariMetaInfo>() {
+ @Override
+ public AmbariMetaInfo get() {
+ return Mockito.mock(AmbariMetaInfo.class);
+ }
+ };
+
+
final Cluster cluster = Mockito.mock(Cluster.class);
Mockito.when(cluster.getClusterId()).thenReturn(1L);
Mockito.when(clusters.getCluster("cluster")).thenReturn(cluster);
@@ -62,12 +72,12 @@ public class ServicesUpCheckTest {
Mockito.when(service.isClientOnlyService()).thenReturn(false);
Mockito.when(service.getDesiredState()).thenReturn(State.UNKNOWN);
- PrerequisiteCheck check = new PrerequisiteCheck(null, null, null, null);
+ PrerequisiteCheck check = new PrerequisiteCheck(null, null);
servicesUpCheck.perform(check, new PrereqCheckRequest("cluster"));
Assert.assertEquals(PrereqCheckStatus.FAIL, check.getStatus());
Mockito.when(service.getDesiredState()).thenReturn(State.STARTED);
- check = new PrerequisiteCheck(null, null, null, null);
+ check = new PrerequisiteCheck(null, null);
servicesUpCheck.perform(check, new PrereqCheckRequest("cluster"));
Assert.assertEquals(PrereqCheckStatus.PASS, check.getStatus());
}
http://git-wip-us.apache.org/repos/asf/ambari/blob/5a2dbeab/ambari-server/src/test/java/org/apache/ambari/server/checks/ServicesYarnWorkPreservingCheckTest.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/checks/ServicesYarnWorkPreservingCheckTest.java b/ambari-server/src/test/java/org/apache/ambari/server/checks/ServicesYarnWorkPreservingCheckTest.java
index 2135c19..721320d 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/checks/ServicesYarnWorkPreservingCheckTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/checks/ServicesYarnWorkPreservingCheckTest.java
@@ -85,12 +85,12 @@ public class ServicesYarnWorkPreservingCheckTest {
final Map<String, String> properties = new HashMap<String, String>();
Mockito.when(config.getProperties()).thenReturn(properties);
- PrerequisiteCheck check = new PrerequisiteCheck(null, null, null, null);
+ PrerequisiteCheck check = new PrerequisiteCheck(null, null);
servicesYarnWorkPreservingCheck.perform(check, new PrereqCheckRequest("cluster"));
Assert.assertEquals(PrereqCheckStatus.FAIL, check.getStatus());
properties.put("yarn.resourcemanager.work-preserving-recovery.enabled", "true");
- check = new PrerequisiteCheck(null, null, null, null);
+ check = new PrerequisiteCheck(null, null);
servicesYarnWorkPreservingCheck.perform(check, new PrereqCheckRequest("cluster"));
Assert.assertEquals(PrereqCheckStatus.PASS, check.getStatus());
}
http://git-wip-us.apache.org/repos/asf/ambari/blob/5a2dbeab/ambari-server/src/test/java/org/apache/ambari/server/state/CheckHelperTest.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/state/CheckHelperTest.java b/ambari-server/src/test/java/org/apache/ambari/server/state/CheckHelperTest.java
index 72b89ca..17a8abe 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/state/CheckHelperTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/state/CheckHelperTest.java
@@ -27,6 +27,7 @@ import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.ClusterNotFoundException;
import org.apache.ambari.server.api.services.AmbariMetaInfo;
import org.apache.ambari.server.checks.AbstractCheckDescriptor;
+import org.apache.ambari.server.checks.CheckDescription;
import org.apache.ambari.server.checks.ServicesUpCheck;
import org.apache.ambari.server.controller.PrereqCheckRequest;
import org.apache.ambari.server.orm.dao.HostVersionDAO;
@@ -88,9 +89,11 @@ public class CheckHelperTest {
final CheckHelper helper = new CheckHelper();
List<AbstractCheckDescriptor> updateChecksRegistry = new ArrayList<AbstractCheckDescriptor>();
AbstractCheckDescriptor descriptor = EasyMock.createNiceMock(AbstractCheckDescriptor.class);
+
descriptor.perform(EasyMock.<PrerequisiteCheck> anyObject(), EasyMock.<PrereqCheckRequest> anyObject());
EasyMock.expectLastCall().andThrow(new AmbariException("error"));
EasyMock.expect(descriptor.isApplicable(EasyMock.<PrereqCheckRequest> anyObject())).andReturn(true);
+ EasyMock.expect(descriptor.getDescription()).andReturn(CheckDescription.HOSTS_HEARTBEAT).anyTimes();
EasyMock.replay(descriptor);
updateChecksRegistry.add(descriptor);
final List<PrerequisiteCheck> upgradeChecks = helper.performChecks(new PrereqCheckRequest("cluster"), updateChecksRegistry);
[2/2] ambari git commit: AMBARI-9780. RU: upgrade checks need changes
(ncole)
Posted by nc...@apache.org.
AMBARI-9780. RU: upgrade checks need changes (ncole)
Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/5a2dbeab
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/5a2dbeab
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/5a2dbeab
Branch: refs/heads/trunk
Commit: 5a2dbeab0e7d5601dccad16940b28a6edf19bdc0
Parents: b1b5857
Author: Nate Cole <nc...@hortonworks.com>
Authored: Tue Feb 24 17:02:01 2015 -0500
Committer: Nate Cole <nc...@hortonworks.com>
Committed: Wed Feb 25 09:11:40 2015 -0500
----------------------------------------------------------------------
.../server/checks/AbstractCheckDescriptor.java | 98 ++++++++++--
.../ambari/server/checks/CheckDescription.java | 157 +++++++++++++++++++
.../server/checks/HostsHeartbeatCheck.java | 9 +-
.../checks/HostsMasterMaintenanceCheck.java | 26 +--
.../checks/HostsRepositoryVersionCheck.java | 7 +-
.../checks/SecondaryNamenodeDeletedCheck.java | 20 ++-
.../checks/ServicesDecommissionCheck.java | 17 +-
.../checks/ServicesMaintenanceModeCheck.java | 11 +-
.../ServicesMapReduceDistributedCacheCheck.java | 30 ++--
.../ServicesNamenodeHighAvailabilityCheck.java | 9 +-
.../ServicesTezDistributedCacheCheck.java | 32 ++--
.../ambari/server/checks/ServicesUpCheck.java | 9 +-
.../checks/ServicesYarnWorkPreservingCheck.java | 12 +-
.../server/controller/PrereqCheckRequest.java | 39 ++++-
.../PreUpgradeCheckResourceProvider.java | 14 +-
.../apache/ambari/server/state/CheckHelper.java | 32 +++-
.../server/state/stack/PrerequisiteCheck.java | 42 +++--
.../checks/AbstractCheckDescriptorTest.java | 28 ++--
.../server/checks/HostsHeartbeatCheckTest.java | 4 +-
.../checks/HostsMasterMaintenanceCheckTest.java | 6 +-
.../checks/HostsRepositoryVersionCheckTest.java | 4 +-
.../SecondaryNamenodeDeletedCheckTest.java | 24 ++-
.../checks/ServicesDecommissionCheckTest.java | 12 +-
.../ServicesMaintenanceModeCheckTest.java | 13 +-
...vicesMapReduceDistributedCacheCheckTest.java | 23 ++-
...rvicesNamenodeHighAvailabilityCheckTest.java | 4 +-
.../ServicesTezDistributedCacheCheckTest.java | 29 ++--
.../server/checks/ServicesUpCheckTest.java | 14 +-
.../ServicesYarnWorkPreservingCheckTest.java | 4 +-
.../ambari/server/state/CheckHelperTest.java | 3 +
30 files changed, 547 insertions(+), 185 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ambari/blob/5a2dbeab/ambari-server/src/main/java/org/apache/ambari/server/checks/AbstractCheckDescriptor.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/checks/AbstractCheckDescriptor.java b/ambari-server/src/main/java/org/apache/ambari/server/checks/AbstractCheckDescriptor.java
index c43d843..d23124b 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/checks/AbstractCheckDescriptor.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/checks/AbstractCheckDescriptor.java
@@ -17,18 +17,24 @@
*/
package org.apache.ambari.server.checks;
+import java.util.ArrayList;
import java.util.List;
+import java.util.Map;
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.api.services.AmbariMetaInfo;
import org.apache.ambari.server.controller.PrereqCheckRequest;
import org.apache.ambari.server.orm.dao.HostVersionDAO;
import org.apache.ambari.server.orm.dao.RepositoryVersionDAO;
+import org.apache.ambari.server.state.Cluster;
import org.apache.ambari.server.state.Clusters;
+import org.apache.ambari.server.state.ServiceInfo;
import org.apache.ambari.server.state.stack.PrereqCheckType;
import org.apache.ambari.server.state.stack.PrerequisiteCheck;
import org.apache.ambari.server.state.stack.upgrade.RepositoryVersionHelper;
import org.apache.commons.lang.StringUtils;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
import com.google.inject.Inject;
import com.google.inject.Provider;
@@ -38,9 +44,7 @@ import com.google.inject.Provider;
*/
public abstract class AbstractCheckDescriptor {
- public final String id;
- public final String description;
- public final PrereqCheckType type;
+ private static final Logger LOG = LoggerFactory.getLogger(AbstractCheckDescriptor.class);
@Inject
Provider<Clusters> clustersProvider;
@@ -57,17 +61,15 @@ public abstract class AbstractCheckDescriptor {
@Inject
Provider<AmbariMetaInfo> ambariMetaInfo;
+ private CheckDescription m_description;
+
/**
* Constructor.
*
- * @param id unique identifier
- * @param type type
* @param description description
*/
- public AbstractCheckDescriptor(String id, PrereqCheckType type, String description) {
- this.id = id;
- this.type = type;
- this.description = description;
+ protected AbstractCheckDescriptor(CheckDescription description) {
+ m_description = description;
}
/**
@@ -92,6 +94,77 @@ public abstract class AbstractCheckDescriptor {
*/
public abstract void perform(PrerequisiteCheck prerequisiteCheck, PrereqCheckRequest request) throws AmbariException;
+
+ public CheckDescription getDescription() {
+ return m_description;
+ }
+
+ public PrereqCheckType getType() {
+ return m_description.getType();
+ }
+
+ /**
+ * Gets the default fail reason
+ * @param prerequisiteCheck the check being performed
+ * @param request the request
+ * @return the failure string
+ */
+ protected String getFailReason(PrerequisiteCheck prerequisiteCheck, PrereqCheckRequest request) {
+ return getFailReason("default", prerequisiteCheck, request);
+ }
+
+ /**
+ * Gets the fail reason
+ * @param key the failure text key
+ * @param prerequisiteCheck the check being performed
+ * @param request the request
+ * @return the failure string
+ */
+ protected String getFailReason(String key,
+ PrerequisiteCheck prerequisiteCheck, PrereqCheckRequest request) {
+ String fail = m_description.getFail(key);
+
+ if (-1 != fail.indexOf("{{version}}") && null != request.getRepositoryVersion()) {
+ fail = fail.replace("{{version}}", request.getRepositoryVersion());
+ }
+
+ if (-1 != fail.indexOf("{{fails}}")) {
+ List<String> names = prerequisiteCheck.getFailedOn();
+
+ if (getDescription().getType() == PrereqCheckType.SERVICE) {
+ Clusters clusters = clustersProvider.get();
+ AmbariMetaInfo metaInfo = ambariMetaInfo.get();
+
+ try {
+ Cluster c = clusters.getCluster(request.getClusterName());
+ Map<String, ServiceInfo> services = metaInfo.getServices(
+ c.getDesiredStackVersion().getStackName(),
+ c.getDesiredStackVersion().getStackVersion());
+
+ List<String> displays = new ArrayList<String>();
+ for (String name : names) {
+ if (services.containsKey(name)) {
+ displays.add(services.get(name).getDisplayName());
+ } else {
+ displays.add(name);
+ }
+ }
+ names = displays;
+ } catch (Exception e) {
+ LOG.warn("Could not load service info map");
+ }
+
+ fail = fail.replace("{{fails}}", formatEntityList(names));
+
+ }
+
+
+ }
+
+ return fail;
+ }
+
+
/**
* Formats lists of given entities to human readable form:
* [entity1] -> {entity1} {noun}
@@ -110,12 +183,7 @@ public abstract class AbstractCheckDescriptor {
if (entities.size() > 1) {
formatted.replace(formatted.lastIndexOf(","), formatted.lastIndexOf(",") + 1, " and");
}
- if (type != null) {
- formatted.append(" ").append(type.name().toLowerCase());
- if (entities.size() > 1) {
- formatted.append("s");
- }
- }
+
return formatted.toString();
}
http://git-wip-us.apache.org/repos/asf/ambari/blob/5a2dbeab/ambari-server/src/main/java/org/apache/ambari/server/checks/CheckDescription.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/checks/CheckDescription.java b/ambari-server/src/main/java/org/apache/ambari/server/checks/CheckDescription.java
new file mode 100644
index 0000000..5b67565
--- /dev/null
+++ b/ambari-server/src/main/java/org/apache/ambari/server/checks/CheckDescription.java
@@ -0,0 +1,157 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.ambari.server.checks;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import org.apache.ambari.server.state.stack.PrereqCheckType;
+
+/**
+ * Enum that wraps the various type, text and failure messages for the checks
+ * done for Rolling Upgrades.
+ */
+public enum CheckDescription {
+
+ HOSTS_HEARTBEAT(PrereqCheckType.HOST,
+ "All hosts must be heartbeating with the Ambari Server unless they are in Maintenance Mode",
+ new HashMap<String, String>() {{
+ put("default",
+ "The following hosts must be heartbeating to the Ambari Server: {{fails}}.");
+ }}),
+
+ HOSTS_MASTER_MAINTENANCE(PrereqCheckType.HOST,
+ "Hosts in Maintenance Mode must not have any master components",
+ new HashMap<String, String>() {{
+ put("default",
+ "The following hosts must not be in in Maintenance Mode since they host Master components: {{fails}}.");
+ put("no_upgrade_name",
+ "Could not find suitable upgrade pack for %s %s to version {{version}}.");
+ put("no_upgrade_pack",
+ "Could not find upgrade pack named %s.");
+ }}),
+
+ HOSTS_REPOSITORY_VERSION(PrereqCheckType.HOST,
+ "All hosts should have target version installed",
+ new HashMap<String, String>() {{
+ put("default",
+ "The following hosts must have version {{version}} installed: {{fails}}.");
+ put("no_repo_version",
+ "Repository version {{version}} does not exist.");
+ }}),
+
+ SECONDARY_NAMENODE_MUST_BE_DELETED(PrereqCheckType.SERVICE,
+ "The SNameNode component must be deleted from all hosts",
+ new HashMap<String, String>() {{
+ put("default", "The SNameNode component must be deleted from host: {{fails}}.");
+ }}),
+
+ SERVICES_DECOMMISSION(PrereqCheckType.SERVICE,
+ "Services should not have components in decommission state",
+ new HashMap<String, String>() {{
+ put("default",
+ "The following Services must not have components in decommissioned or decommissioning state: {{fails}}.");
+ }}),
+
+ SERVICES_MAINTENANCE_MODE(PrereqCheckType.SERVICE,
+ "No services can be in Maintenance Mode",
+ new HashMap<String, String>() {{
+ put("default",
+ "The following Services must not be in Maintenance Mode: {{fails}}.");
+ }}),
+
+ SERVICES_MR_DISTRIBUTED_CACHE(PrereqCheckType.SERVICE,
+ "MapReduce should reference Hadoop libraries from the distributed cache in HDFS",
+ new HashMap<String, String>() {{
+ put("app_classpath",
+ "The mapred-site.xml property mapreduce.application.classpath should be set.");
+ put("framework_path",
+ "The mapred-site.xml property mapreduce.application.framework.path should be set.");
+ put("not_dfs",
+ "The mapred-site.xml property mapreduce.application.framework.path or the core-site.xml property fs.defaultFS should point to *dfs:/ url.");
+ }}),
+
+ SERVICES_NAMENODE_HA(PrereqCheckType.SERVICE,
+ "NameNode High Availability must be enabled",
+ new HashMap<String, String>() {{
+ put("default",
+ "NameNode High Availability is not enabled. Verify that dfs.nameservices property is present in hdfs-site.xml.");
+ }}),
+
+
+ SERVICES_TEZ_DISTRIBUTED_CACHE(PrereqCheckType.SERVICE,
+ "Tez should reference Hadoop libraries from the distributed cache in HDFS",
+ new HashMap<String, String>() {{
+ put("tez_lib_uri_missing",
+ "The tez-site.xml property tez.lib.uris should be set.");
+ put("tez_use_hadoop_libs",
+ "The tez-site.xml property tez.use.cluster-hadoop-libs should be set.");
+ put("lib_not_dfs",
+ "The tez-site.xml property tez.lib.uris or the core-site.xml property fs.defaultFS should point to *dfs:/ url.");
+ put("lib_not_targz",
+ "The tez-site.xml property tez.lib.uris should point to tar.gz file.");
+ put("tez_use_hadoop_libs_false",
+ "The tez-site.xml property tez.use.cluster.hadoop-libs should be set to false.");
+ }}),
+
+ SERVICES_UP(PrereqCheckType.SERVICE,
+ "All services must be started",
+ new HashMap<String, String>() {{
+ put("default",
+ "The following Services must be started: {{fails}}");
+ }}),
+
+ SERVICES_YARN_WP(PrereqCheckType.SERVICE,
+ "YARN work preserving restart should be enabled",
+ new HashMap<String, String>() {{
+ put("default",
+ "YARN should have work preserving restart enabled. The yarn-site.xml property yarn.resourcemanager.work-preserving-recovery.enabled property should be set to true.");
+ }});
+
+ private PrereqCheckType m_type;
+ private String m_description;
+ private Map<String, String> m_fails;
+ private CheckDescription(PrereqCheckType type, String description,
+ Map<String, String> fails) {
+ m_type = type;
+ m_description = description;
+ m_fails = fails;
+ }
+
+ /**
+ * @return the type of check
+ */
+ public PrereqCheckType getType() {
+ return m_type;
+ }
+
+ /**
+ * @return the text associated with the description
+ */
+ public String getText() {
+ return m_description;
+ }
+
+ /**
+ * @param key the failure text key
+ * @return the fail text template. Never {@code null}
+ */
+ public String getFail(String key) {
+ return m_fails.containsKey(key) ? m_fails.get(key) : "";
+ }
+}
http://git-wip-us.apache.org/repos/asf/ambari/blob/5a2dbeab/ambari-server/src/main/java/org/apache/ambari/server/checks/HostsHeartbeatCheck.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/checks/HostsHeartbeatCheck.java b/ambari-server/src/main/java/org/apache/ambari/server/checks/HostsHeartbeatCheck.java
index 9e76928..cf9e4ae 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/checks/HostsHeartbeatCheck.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/checks/HostsHeartbeatCheck.java
@@ -17,6 +17,8 @@
*/
package org.apache.ambari.server.checks;
+import java.util.Map;
+
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.controller.PrereqCheckRequest;
import org.apache.ambari.server.state.Cluster;
@@ -25,9 +27,6 @@ import org.apache.ambari.server.state.HostHealthStatus;
import org.apache.ambari.server.state.MaintenanceState;
import org.apache.ambari.server.state.stack.PrereqCheckStatus;
import org.apache.ambari.server.state.stack.PrerequisiteCheck;
-import org.apache.ambari.server.state.stack.PrereqCheckType;
-
-import java.util.Map;
/**
* Checks that all hosts are either in maintenance mode or heartbeating with the server.
@@ -38,7 +37,7 @@ public class HostsHeartbeatCheck extends AbstractCheckDescriptor {
* Constructor.
*/
public HostsHeartbeatCheck() {
- super("HOSTS_HEARTBEAT", PrereqCheckType.HOST, "All hosts must be heartbeating with the server unless they are in Maintenance Mode");
+ super(CheckDescription.HOSTS_HEARTBEAT);
}
@Override
@@ -54,7 +53,7 @@ public class HostsHeartbeatCheck extends AbstractCheckDescriptor {
}
if (!prerequisiteCheck.getFailedOn().isEmpty()) {
prerequisiteCheck.setStatus(PrereqCheckStatus.FAIL);
- prerequisiteCheck.setFailReason(formatEntityList(prerequisiteCheck.getFailedOn()) + " must be heartbeating with the server");
+ prerequisiteCheck.setFailReason(getFailReason(prerequisiteCheck, request));
}
}
}
http://git-wip-us.apache.org/repos/asf/ambari/blob/5a2dbeab/ambari-server/src/main/java/org/apache/ambari/server/checks/HostsMasterMaintenanceCheck.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/checks/HostsMasterMaintenanceCheck.java b/ambari-server/src/main/java/org/apache/ambari/server/checks/HostsMasterMaintenanceCheck.java
index 7bdce47..1f97dd9 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/checks/HostsMasterMaintenanceCheck.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/checks/HostsMasterMaintenanceCheck.java
@@ -17,19 +17,23 @@
*/
package org.apache.ambari.server.checks;
+import java.util.HashSet;
+import java.util.Map;
+import java.util.Set;
+
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.controller.PrereqCheckRequest;
-import org.apache.ambari.server.state.*;
+import org.apache.ambari.server.state.Cluster;
+import org.apache.ambari.server.state.Host;
+import org.apache.ambari.server.state.MaintenanceState;
+import org.apache.ambari.server.state.Service;
+import org.apache.ambari.server.state.ServiceComponent;
+import org.apache.ambari.server.state.StackId;
import org.apache.ambari.server.state.stack.PrereqCheckStatus;
import org.apache.ambari.server.state.stack.PrerequisiteCheck;
-import org.apache.ambari.server.state.stack.PrereqCheckType;
import org.apache.ambari.server.state.stack.UpgradePack;
import org.apache.ambari.server.state.stack.UpgradePack.ProcessingComponent;
-import java.util.HashSet;
-import java.util.Map;
-import java.util.Set;
-
/**
* Checks that all hosts in maintenance state do not have master components.
*/
@@ -39,7 +43,7 @@ public class HostsMasterMaintenanceCheck extends AbstractCheckDescriptor {
* Constructor.
*/
public HostsMasterMaintenanceCheck() {
- super("HOSTS_MASTER_MAINTENANCE", PrereqCheckType.HOST, "Hosts in Maintenance Mode must not have any master components");
+ super(CheckDescription.HOSTS_MASTER_MAINTENANCE);
}
@Override
@@ -56,13 +60,15 @@ public class HostsMasterMaintenanceCheck extends AbstractCheckDescriptor {
final String upgradePackName = repositoryVersionHelper.get().getUpgradePackageName(stackId.getStackName(), stackId.getStackVersion(), request.getRepositoryVersion());
if (upgradePackName == null) {
prerequisiteCheck.setStatus(PrereqCheckStatus.FAIL);
- prerequisiteCheck.setFailReason("Could not find suitable upgrade pack for " + stackId.getStackName() + " " + stackId.getStackVersion() + " to version " + request.getRepositoryVersion());
+ String fail = getFailReason("no_upgrade_name", prerequisiteCheck, request);
+ prerequisiteCheck.setFailReason(String.format(fail, stackId.getStackName(), stackId.getStackVersion()));
return;
}
final UpgradePack upgradePack = ambariMetaInfo.get().getUpgradePacks(stackId.getStackName(), stackId.getStackVersion()).get(upgradePackName);
if (upgradePack == null) {
prerequisiteCheck.setStatus(PrereqCheckStatus.FAIL);
- prerequisiteCheck.setFailReason("Could not find upgrade pack named " + upgradePackName);
+ String fail = getFailReason("no_upgrade_pack", prerequisiteCheck, request);
+ prerequisiteCheck.setFailReason(String.format(fail, upgradePackName));
return;
}
final Set<String> componentsFromUpgradePack = new HashSet<String>();
@@ -85,7 +91,7 @@ public class HostsMasterMaintenanceCheck extends AbstractCheckDescriptor {
}
if (!prerequisiteCheck.getFailedOn().isEmpty()) {
prerequisiteCheck.setStatus(PrereqCheckStatus.FAIL);
- prerequisiteCheck.setFailReason(formatEntityList(prerequisiteCheck.getFailedOn()) + " must not be in in Maintenance Mode as they have master components installed");
+ prerequisiteCheck.setFailReason(getFailReason(prerequisiteCheck, request));
}
}
}
http://git-wip-us.apache.org/repos/asf/ambari/blob/5a2dbeab/ambari-server/src/main/java/org/apache/ambari/server/checks/HostsRepositoryVersionCheck.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/checks/HostsRepositoryVersionCheck.java b/ambari-server/src/main/java/org/apache/ambari/server/checks/HostsRepositoryVersionCheck.java
index f9bcdd9..cc8335e 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/checks/HostsRepositoryVersionCheck.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/checks/HostsRepositoryVersionCheck.java
@@ -29,7 +29,6 @@ import org.apache.ambari.server.state.MaintenanceState;
import org.apache.ambari.server.state.RepositoryVersionState;
import org.apache.ambari.server.state.StackId;
import org.apache.ambari.server.state.stack.PrereqCheckStatus;
-import org.apache.ambari.server.state.stack.PrereqCheckType;
import org.apache.ambari.server.state.stack.PrerequisiteCheck;
/**
@@ -41,7 +40,7 @@ public class HostsRepositoryVersionCheck extends AbstractCheckDescriptor {
* Constructor.
*/
public HostsRepositoryVersionCheck() {
- super("HOSTS_REPOSITORY_VERSION", PrereqCheckType.HOST, "Hosts should have the new repository version installed");
+ super(CheckDescription.HOSTS_REPOSITORY_VERSION);
}
@Override
@@ -61,7 +60,7 @@ public class HostsRepositoryVersionCheck extends AbstractCheckDescriptor {
final RepositoryVersionEntity repositoryVersion = repositoryVersionDaoProvider.get().findByStackAndVersion(stackId.getStackId(), request.getRepositoryVersion());
if (repositoryVersion == null) {
prerequisiteCheck.setStatus(PrereqCheckStatus.FAIL);
- prerequisiteCheck.setFailReason("Repository version " + request.getRepositoryVersion() + " doesn't exist");
+ prerequisiteCheck.setFailReason(getFailReason("no_repo_version",prerequisiteCheck, request));
prerequisiteCheck.getFailedOn().addAll(clusterHosts.keySet());
return;
}
@@ -73,7 +72,7 @@ public class HostsRepositoryVersionCheck extends AbstractCheckDescriptor {
}
if (!prerequisiteCheck.getFailedOn().isEmpty()) {
prerequisiteCheck.setStatus(PrereqCheckStatus.FAIL);
- prerequisiteCheck.setFailReason(formatEntityList(prerequisiteCheck.getFailedOn()) + " must have repository version " + request.getRepositoryVersion() + " installed");
+ prerequisiteCheck.setFailReason(getFailReason(prerequisiteCheck, request));
}
}
}
http://git-wip-us.apache.org/repos/asf/ambari/blob/5a2dbeab/ambari-server/src/main/java/org/apache/ambari/server/checks/SecondaryNamenodeDeletedCheck.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/checks/SecondaryNamenodeDeletedCheck.java b/ambari-server/src/main/java/org/apache/ambari/server/checks/SecondaryNamenodeDeletedCheck.java
index 6ba28f1..2a7b9f3 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/checks/SecondaryNamenodeDeletedCheck.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/checks/SecondaryNamenodeDeletedCheck.java
@@ -17,7 +17,9 @@
*/
package org.apache.ambari.server.checks;
-import com.google.inject.Inject;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.ServiceComponentNotFoundException;
@@ -29,13 +31,9 @@ import org.apache.ambari.server.stack.MasterHostResolver;
import org.apache.ambari.server.state.Cluster;
import org.apache.ambari.server.state.ServiceComponent;
import org.apache.ambari.server.state.stack.PrereqCheckStatus;
-import org.apache.ambari.server.state.stack.PrereqCheckType;
import org.apache.ambari.server.state.stack.PrerequisiteCheck;
-import org.apache.commons.lang.StringUtils;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Set;
+import com.google.inject.Inject;
/**
* Checks that the Secondary NameNode is not present on any of the hosts.
@@ -47,7 +45,7 @@ public class SecondaryNamenodeDeletedCheck extends AbstractCheckDescriptor {
* Constructor.
*/
public SecondaryNamenodeDeletedCheck() {
- super("SECONDARY_NAMENODE_MUST_BE_DELETED", PrereqCheckType.SERVICE, "The SECONDARY_NAMENODE component must be deleted from all hosts");
+ super(CheckDescription.SECONDARY_NAMENODE_MUST_BE_DELETED);
}
@Override
@@ -58,6 +56,12 @@ public class SecondaryNamenodeDeletedCheck extends AbstractCheckDescriptor {
} catch (ServiceNotFoundException ex) {
return false;
}
+
+ PrereqCheckStatus ha = request.getResult(CheckDescription.SERVICES_NAMENODE_HA);
+ if (null != ha && ha == PrereqCheckStatus.FAIL) {
+ return false;
+ }
+
return true;
}
@@ -91,7 +95,7 @@ public class SecondaryNamenodeDeletedCheck extends AbstractCheckDescriptor {
if (!hosts.isEmpty()) {
prerequisiteCheck.getFailedOn().add(SECONDARY_NAMENODE);
prerequisiteCheck.setStatus(PrereqCheckStatus.FAIL);
- prerequisiteCheck.setFailReason("The SECONDARY_NAMENODE component must be deleted from host(s): " + StringUtils.join(hosts, ", ") + ". Please delete it from the Host Components.");
+ prerequisiteCheck.setFailReason(getFailReason(prerequisiteCheck, request));
}
}
}
http://git-wip-us.apache.org/repos/asf/ambari/blob/5a2dbeab/ambari-server/src/main/java/org/apache/ambari/server/checks/ServicesDecommissionCheck.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/checks/ServicesDecommissionCheck.java b/ambari-server/src/main/java/org/apache/ambari/server/checks/ServicesDecommissionCheck.java
index 6ac0326..7497c2f 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/checks/ServicesDecommissionCheck.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/checks/ServicesDecommissionCheck.java
@@ -17,14 +17,17 @@
*/
package org.apache.ambari.server.checks;
+import java.util.Map;
+
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.controller.PrereqCheckRequest;
-import org.apache.ambari.server.state.*;
-import org.apache.ambari.server.state.stack.PrereqCheckType;
-import org.apache.ambari.server.state.stack.PrerequisiteCheck;
+import org.apache.ambari.server.state.Cluster;
+import org.apache.ambari.server.state.HostComponentAdminState;
+import org.apache.ambari.server.state.Service;
+import org.apache.ambari.server.state.ServiceComponent;
+import org.apache.ambari.server.state.ServiceComponentHost;
import org.apache.ambari.server.state.stack.PrereqCheckStatus;
-
-import java.util.Map;
+import org.apache.ambari.server.state.stack.PrerequisiteCheck;
/**
* Checks that there are no services in decommission state.
@@ -35,7 +38,7 @@ public class ServicesDecommissionCheck extends AbstractCheckDescriptor {
* Constructor.
*/
public ServicesDecommissionCheck() {
- super("SERVICES_DECOMMISSION", PrereqCheckType.SERVICE, "Services should not be in Decommission state");
+ super(CheckDescription.SERVICES_DECOMMISSION);
}
@Override
@@ -56,7 +59,7 @@ public class ServicesDecommissionCheck extends AbstractCheckDescriptor {
}
if (!prerequisiteCheck.getFailedOn().isEmpty()) {
prerequisiteCheck.setStatus(PrereqCheckStatus.FAIL);
- prerequisiteCheck.setFailReason(formatEntityList(prerequisiteCheck.getFailedOn()) + " must not be in decommissioned or decommissioning state");
+ prerequisiteCheck.setFailReason(getFailReason(prerequisiteCheck, request));
}
}
}
http://git-wip-us.apache.org/repos/asf/ambari/blob/5a2dbeab/ambari-server/src/main/java/org/apache/ambari/server/checks/ServicesMaintenanceModeCheck.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/checks/ServicesMaintenanceModeCheck.java b/ambari-server/src/main/java/org/apache/ambari/server/checks/ServicesMaintenanceModeCheck.java
index 5043d31..0ae5c46 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/checks/ServicesMaintenanceModeCheck.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/checks/ServicesMaintenanceModeCheck.java
@@ -17,17 +17,16 @@
*/
package org.apache.ambari.server.checks;
+import java.util.Map;
+
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.controller.PrereqCheckRequest;
import org.apache.ambari.server.state.Cluster;
import org.apache.ambari.server.state.MaintenanceState;
import org.apache.ambari.server.state.Service;
import org.apache.ambari.server.state.State;
-import org.apache.ambari.server.state.stack.PrerequisiteCheck;
import org.apache.ambari.server.state.stack.PrereqCheckStatus;
-import org.apache.ambari.server.state.stack.PrereqCheckType;
-
-import java.util.Map;
+import org.apache.ambari.server.state.stack.PrerequisiteCheck;
/**
* Checks that services are in the maintenance mode.
@@ -38,7 +37,7 @@ public class ServicesMaintenanceModeCheck extends AbstractCheckDescriptor {
* Constructor.
*/
public ServicesMaintenanceModeCheck() {
- super("SERVICES_MAINTENANCE_MODE", PrereqCheckType.SERVICE, "No service can be in maintenance mode");
+ super(CheckDescription.SERVICES_MAINTENANCE_MODE);
}
@Override
@@ -53,7 +52,7 @@ public class ServicesMaintenanceModeCheck extends AbstractCheckDescriptor {
}
if (!prerequisiteCheck.getFailedOn().isEmpty()) {
prerequisiteCheck.setStatus(PrereqCheckStatus.FAIL);
- prerequisiteCheck.setFailReason(formatEntityList(prerequisiteCheck.getFailedOn()) + " must not be in Maintenance Mode");
+ prerequisiteCheck.setFailReason(getFailReason(prerequisiteCheck, request));
}
}
}
http://git-wip-us.apache.org/repos/asf/ambari/blob/5a2dbeab/ambari-server/src/main/java/org/apache/ambari/server/checks/ServicesMapReduceDistributedCacheCheck.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/checks/ServicesMapReduceDistributedCacheCheck.java b/ambari-server/src/main/java/org/apache/ambari/server/checks/ServicesMapReduceDistributedCacheCheck.java
index c388a81..59e0a95 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/checks/ServicesMapReduceDistributedCacheCheck.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/checks/ServicesMapReduceDistributedCacheCheck.java
@@ -17,6 +17,10 @@
*/
package org.apache.ambari.server.checks;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.ServiceNotFoundException;
import org.apache.ambari.server.controller.PrereqCheckRequest;
@@ -25,13 +29,8 @@ import org.apache.ambari.server.state.Config;
import org.apache.ambari.server.state.DesiredConfig;
import org.apache.ambari.server.state.stack.PrereqCheckStatus;
import org.apache.ambari.server.state.stack.PrerequisiteCheck;
-import org.apache.ambari.server.state.stack.PrereqCheckType;
import org.apache.commons.lang.StringUtils;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Map;
-
/**
* Checks that MR jobs reference hadoop libraries from the distributed cache.
*/
@@ -46,6 +45,12 @@ public class ServicesMapReduceDistributedCacheCheck extends AbstractCheckDescrip
} catch (ServiceNotFoundException ex) {
return false;
}
+
+ PrereqCheckStatus ha = request.getResult(CheckDescription.SERVICES_NAMENODE_HA);
+ if (null != ha && ha == PrereqCheckStatus.FAIL) {
+ return false;
+ }
+
return true;
}
@@ -53,7 +58,7 @@ public class ServicesMapReduceDistributedCacheCheck extends AbstractCheckDescrip
* Constructor.
*/
public ServicesMapReduceDistributedCacheCheck() {
- super("SERVICES_MR_DISTRIBUTED_CACHE", PrereqCheckType.SERVICE, "MapReduce should reference hadoop libraries from the distributed cache");
+ super(CheckDescription.SERVICES_MR_DISTRIBUTED_CACHE);
}
@Override
@@ -63,6 +68,7 @@ public class ServicesMapReduceDistributedCacheCheck extends AbstractCheckDescrip
final String mrConfigType = "mapred-site";
final String coreSiteConfigType = "core-site";
final Map<String, DesiredConfig> desiredConfigs = cluster.getDesiredConfigs();
+
final DesiredConfig mrDesiredConfig = desiredConfigs.get(mrConfigType);
final DesiredConfig coreSiteDesiredConfig = desiredConfigs.get(coreSiteConfigType);
final Config mrConfig = cluster.getConfig(mrConfigType, mrDesiredConfig.getTag());
@@ -73,24 +79,24 @@ public class ServicesMapReduceDistributedCacheCheck extends AbstractCheckDescrip
List<String> errorMessages = new ArrayList<String>();
if (applicationClasspath == null || applicationClasspath.isEmpty()) {
- errorMessages.add("Property mapreduce.application.classpath is missing from mapred-site, please add it.");
+ errorMessages.add(getFailReason("app_classpath", prerequisiteCheck, request));
}
if (frameworkPath == null || frameworkPath.isEmpty()) {
- errorMessages.add("Property mapreduce.application.framework.path is missing from mapred-site, please add it.");
+ errorMessages.add(getFailReason("framework_path", prerequisiteCheck, request));
}
if (!errorMessages.isEmpty()) {
- prerequisiteCheck.getFailedOn().add("MAP_REDUCE");
+ prerequisiteCheck.getFailedOn().add("MAPREDUCE2");
prerequisiteCheck.setStatus(PrereqCheckStatus.FAIL);
prerequisiteCheck.setFailReason(StringUtils.join(errorMessages, " "));
return;
}
if (!frameworkPath.matches("^[^:]*dfs:.*") && (defaultFS == null || !defaultFS.matches("^[^:]*dfs:.*"))) {
- prerequisiteCheck.getFailedOn().add("MAP_REDUCE");
+ prerequisiteCheck.getFailedOn().add("MAPREDUCE2");
prerequisiteCheck.setStatus(PrereqCheckStatus.FAIL);
- prerequisiteCheck.setFailReason("MapReduce should reference hadoop libraries from the distributed cache. Please make sure that either mapred-site's mapreduce.application.framework.path or core-site's fs.defaultFS begins with *dfs:");
+ prerequisiteCheck.setFailReason(getFailReason("not_dfs", prerequisiteCheck, request));
}
}
-}
\ No newline at end of file
+}
http://git-wip-us.apache.org/repos/asf/ambari/blob/5a2dbeab/ambari-server/src/main/java/org/apache/ambari/server/checks/ServicesNamenodeHighAvailabilityCheck.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/checks/ServicesNamenodeHighAvailabilityCheck.java b/ambari-server/src/main/java/org/apache/ambari/server/checks/ServicesNamenodeHighAvailabilityCheck.java
index d9f8704..56ce1c1 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/checks/ServicesNamenodeHighAvailabilityCheck.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/checks/ServicesNamenodeHighAvailabilityCheck.java
@@ -17,6 +17,8 @@
*/
package org.apache.ambari.server.checks;
+import java.util.Map;
+
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.ServiceNotFoundException;
import org.apache.ambari.server.controller.PrereqCheckRequest;
@@ -24,11 +26,8 @@ import org.apache.ambari.server.state.Cluster;
import org.apache.ambari.server.state.Config;
import org.apache.ambari.server.state.DesiredConfig;
import org.apache.ambari.server.state.stack.PrereqCheckStatus;
-import org.apache.ambari.server.state.stack.PrereqCheckType;
import org.apache.ambari.server.state.stack.PrerequisiteCheck;
-import java.util.Map;
-
/**
* Checks that namenode high availability is enabled.
*/
@@ -38,7 +37,7 @@ public class ServicesNamenodeHighAvailabilityCheck extends AbstractCheckDescript
* Constructor.
*/
public ServicesNamenodeHighAvailabilityCheck() {
- super("SERVICES_NAMENODE_HA", PrereqCheckType.SERVICE, "Namenode high availability should be enabled");
+ super(CheckDescription.SERVICES_NAMENODE_HA);
}
@Override
@@ -63,7 +62,7 @@ public class ServicesNamenodeHighAvailabilityCheck extends AbstractCheckDescript
if (!config.getProperties().containsKey("dfs.nameservices")) {
prerequisiteCheck.getFailedOn().add("HDFS");
prerequisiteCheck.setStatus(PrereqCheckStatus.FAIL);
- prerequisiteCheck.setFailReason("Namenode high availability is disabled. Verify that dfs.nameservices property is present in hdfs-site.xml");
+ prerequisiteCheck.setFailReason(getFailReason(prerequisiteCheck, request));
}
}
}
http://git-wip-us.apache.org/repos/asf/ambari/blob/5a2dbeab/ambari-server/src/main/java/org/apache/ambari/server/checks/ServicesTezDistributedCacheCheck.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/checks/ServicesTezDistributedCacheCheck.java b/ambari-server/src/main/java/org/apache/ambari/server/checks/ServicesTezDistributedCacheCheck.java
index 8859370..6686a95 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/checks/ServicesTezDistributedCacheCheck.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/checks/ServicesTezDistributedCacheCheck.java
@@ -17,6 +17,10 @@
*/
package org.apache.ambari.server.checks;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.ServiceNotFoundException;
import org.apache.ambari.server.controller.PrereqCheckRequest;
@@ -25,13 +29,8 @@ import org.apache.ambari.server.state.Config;
import org.apache.ambari.server.state.DesiredConfig;
import org.apache.ambari.server.state.stack.PrereqCheckStatus;
import org.apache.ambari.server.state.stack.PrerequisiteCheck;
-import org.apache.ambari.server.state.stack.PrereqCheckType;
import org.apache.commons.lang.StringUtils;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Map;
-
/**
* Checks that Tez jobs reference hadoop libraries from the distributed cache.
*/
@@ -46,6 +45,12 @@ public class ServicesTezDistributedCacheCheck extends AbstractCheckDescriptor {
} catch (ServiceNotFoundException ex) {
return false;
}
+
+ PrereqCheckStatus ha = request.getResult(CheckDescription.SERVICES_NAMENODE_HA);
+ if (null != ha && ha == PrereqCheckStatus.FAIL) {
+ return false;
+ }
+
return true;
}
@@ -53,7 +58,7 @@ public class ServicesTezDistributedCacheCheck extends AbstractCheckDescriptor {
* Constructor.
*/
public ServicesTezDistributedCacheCheck() {
- super("SERVICES_TEZ_DISTRIBUTED_CACHE", PrereqCheckType.SERVICE, "TEZ should reference hadoop libraries from the distributed cache");
+ super(CheckDescription.SERVICES_TEZ_DISTRIBUTED_CACHE);
}
@Override
@@ -63,6 +68,7 @@ public class ServicesTezDistributedCacheCheck extends AbstractCheckDescriptor {
final String tezConfigType = "tez-site";
final String coreSiteConfigType = "core-site";
final Map<String, DesiredConfig> desiredConfigs = cluster.getDesiredConfigs();
+
final DesiredConfig tezDesiredConfig = desiredConfigs.get(tezConfigType);
final Config tezConfig = cluster.getConfig(tezConfigType, tezDesiredConfig.getTag());
final DesiredConfig coreSiteDesiredConfig = desiredConfigs.get(coreSiteConfigType);
@@ -73,11 +79,11 @@ public class ServicesTezDistributedCacheCheck extends AbstractCheckDescriptor {
List<String> errorMessages = new ArrayList<String>();
if (libUris == null || libUris.isEmpty()) {
- errorMessages.add("Property tez.lib.uris is missing from tez-site, please add it.");
+ errorMessages.add(getFailReason("tez_lib_uri_missing", prerequisiteCheck, request));
}
if (useHadoopLibs == null || useHadoopLibs.isEmpty()) {
- errorMessages.add("Property tez.use.cluster.hadoop-libs is missing from tez-site, please add it.");
+ errorMessages.add(getFailReason("tez_use_hadoop_libs", prerequisiteCheck, request));
}
if (!errorMessages.isEmpty()) {
@@ -88,13 +94,15 @@ public class ServicesTezDistributedCacheCheck extends AbstractCheckDescriptor {
}
if (!libUris.matches("^[^:]*dfs:.*") && (defaultFS == null || !defaultFS.matches("^[^:]*dfs:.*"))) {
- errorMessages.add("Property tez.lib.uris in tez-site should use a distributed file system. Please make sure that either tez-site's tez.lib.uris or core-site's fs.defaultFS begins with *dfs:");
+ errorMessages.add(getFailReason("lib_not_dfs", prerequisiteCheck, request));
}
+
if (!libUris.contains("tar.gz")) {
- errorMessages.add("Property tez.lib.uris in tez-site should end in tar.gz");
+ errorMessages.add(getFailReason("lib_not_targz", prerequisiteCheck, request));
}
+
if (Boolean.parseBoolean(useHadoopLibs)) {
- errorMessages.add("Property tez.use.cluster.hadoop-libs in tez-site should be set to false");
+ errorMessages.add(getFailReason("tez_use_hadoop_libs_false", prerequisiteCheck, request));
}
if (!errorMessages.isEmpty()) {
@@ -103,4 +111,4 @@ public class ServicesTezDistributedCacheCheck extends AbstractCheckDescriptor {
prerequisiteCheck.setFailReason(StringUtils.join(errorMessages, " "));
}
}
-}
\ No newline at end of file
+}
http://git-wip-us.apache.org/repos/asf/ambari/blob/5a2dbeab/ambari-server/src/main/java/org/apache/ambari/server/checks/ServicesUpCheck.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/checks/ServicesUpCheck.java b/ambari-server/src/main/java/org/apache/ambari/server/checks/ServicesUpCheck.java
index e2b7657..e0696fa 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/checks/ServicesUpCheck.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/checks/ServicesUpCheck.java
@@ -17,17 +17,16 @@
*/
package org.apache.ambari.server.checks;
+import java.util.Map;
+
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.controller.PrereqCheckRequest;
import org.apache.ambari.server.state.Cluster;
import org.apache.ambari.server.state.Service;
import org.apache.ambari.server.state.State;
import org.apache.ambari.server.state.stack.PrereqCheckStatus;
-import org.apache.ambari.server.state.stack.PrereqCheckType;
import org.apache.ambari.server.state.stack.PrerequisiteCheck;
-import java.util.Map;
-
/**
* Checks that services are up.
*/
@@ -37,7 +36,7 @@ public class ServicesUpCheck extends AbstractCheckDescriptor {
* Constructor.
*/
public ServicesUpCheck() {
- super("SERVICES_UP", PrereqCheckType.SERVICE, "All services must be up");
+ super(CheckDescription.SERVICES_UP);
}
@Override
@@ -56,7 +55,7 @@ public class ServicesUpCheck extends AbstractCheckDescriptor {
if (!prerequisiteCheck.getFailedOn().isEmpty()) {
prerequisiteCheck.setStatus(PrereqCheckStatus.FAIL);
- prerequisiteCheck.setFailReason(formatEntityList(prerequisiteCheck.getFailedOn()) + " must be STARTED");
+ prerequisiteCheck.setFailReason(getFailReason(prerequisiteCheck, request));
}
}
}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/ambari/blob/5a2dbeab/ambari-server/src/main/java/org/apache/ambari/server/checks/ServicesYarnWorkPreservingCheck.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/checks/ServicesYarnWorkPreservingCheck.java b/ambari-server/src/main/java/org/apache/ambari/server/checks/ServicesYarnWorkPreservingCheck.java
index 3b06076..7879346 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/checks/ServicesYarnWorkPreservingCheck.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/checks/ServicesYarnWorkPreservingCheck.java
@@ -17,19 +17,18 @@
*/
package org.apache.ambari.server.checks;
+import java.util.Map;
+
import org.apache.ambari.server.AmbariException;
import org.apache.ambari.server.ServiceNotFoundException;
import org.apache.ambari.server.controller.PrereqCheckRequest;
import org.apache.ambari.server.state.Cluster;
import org.apache.ambari.server.state.Config;
import org.apache.ambari.server.state.DesiredConfig;
-import org.apache.ambari.server.state.stack.PrerequisiteCheck;
import org.apache.ambari.server.state.stack.PrereqCheckStatus;
-import org.apache.ambari.server.state.stack.PrereqCheckType;
+import org.apache.ambari.server.state.stack.PrerequisiteCheck;
import org.apache.commons.lang.BooleanUtils;
-import java.util.Map;
-
/**
* Checks that YARN has work-preserving restart enabled.
*/
@@ -39,7 +38,7 @@ public class ServicesYarnWorkPreservingCheck extends AbstractCheckDescriptor {
* Constructor.
*/
public ServicesYarnWorkPreservingCheck() {
- super("SERVICES_YARN_WP", PrereqCheckType.SERVICE, "YARN work preserving restart should be enabled");
+ super(CheckDescription.SERVICES_YARN_WP);
}
@Override
@@ -65,8 +64,7 @@ public class ServicesYarnWorkPreservingCheck extends AbstractCheckDescriptor {
!BooleanUtils.toBoolean(config.getProperties().get("yarn.resourcemanager.work-preserving-recovery.enabled"))) {
prerequisiteCheck.getFailedOn().add("YARN");
prerequisiteCheck.setStatus(PrereqCheckStatus.FAIL);
- prerequisiteCheck.setFailReason("YARN doesn't have work preserving restart. Verify that yarn.resourcemanager.work-preserving-recovery.enabled property"
- + " is present in yarn-site.xml and is set to true");
+ prerequisiteCheck.setFailReason(getFailReason(prerequisiteCheck, request));
}
}
}
http://git-wip-us.apache.org/repos/asf/ambari/blob/5a2dbeab/ambari-server/src/main/java/org/apache/ambari/server/controller/PrereqCheckRequest.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/controller/PrereqCheckRequest.java b/ambari-server/src/main/java/org/apache/ambari/server/controller/PrereqCheckRequest.java
index 5f33914..b7b4858 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/controller/PrereqCheckRequest.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/controller/PrereqCheckRequest.java
@@ -17,27 +17,52 @@
*/
package org.apache.ambari.server.controller;
+import java.util.HashMap;
+import java.util.Map;
+
+import org.apache.ambari.server.checks.CheckDescription;
+import org.apache.ambari.server.state.stack.PrereqCheckStatus;
+
/**
* Represents a prerequisite check request.
*/
public class PrereqCheckRequest {
- private final String clusterName;
- private String repositoryVersion;
+ private String m_clusterName;
+ private String m_repositoryVersion;
+ private Map<CheckDescription, PrereqCheckStatus> m_results =
+ new HashMap<CheckDescription, PrereqCheckStatus>();
- //TODO make repositoryVersionName also final as soon as UI will be changed to always provide it to API
public PrereqCheckRequest(String clusterName) {
- this.clusterName = clusterName;
+ m_clusterName = clusterName;
}
public String getClusterName() {
- return clusterName;
+ return m_clusterName;
}
public String getRepositoryVersion() {
- return repositoryVersion;
+ return m_repositoryVersion;
}
public void setRepositoryVersion(String repositoryVersion) {
- this.repositoryVersion = repositoryVersion;
+ m_repositoryVersion = repositoryVersion;
+ }
+
+ /**
+ * Sets the result of a check.
+ * @param description the description
+ * @param status the status result
+ */
+ public void addResult(CheckDescription description, PrereqCheckStatus status) {
+ m_results.put(description, status);
+ }
+
+ /**
+ * Gets the result of a check of the supplied description
+ * @param description the description
+ * @return the return value, or {@code null} if it has not been run
+ */
+ public PrereqCheckStatus getResult(CheckDescription description) {
+ return m_results.get(description);
}
}
http://git-wip-us.apache.org/repos/asf/ambari/blob/5a2dbeab/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/PreUpgradeCheckResourceProvider.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/PreUpgradeCheckResourceProvider.java b/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/PreUpgradeCheckResourceProvider.java
index 2220b2b..ee8cefce 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/PreUpgradeCheckResourceProvider.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/PreUpgradeCheckResourceProvider.java
@@ -17,27 +17,26 @@
*/
package org.apache.ambari.server.controller.internal;
+import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashSet;
+import java.util.List;
import java.util.Map;
import java.util.Set;
-import java.util.List;
-import java.util.ArrayList;
import org.apache.ambari.server.StaticallyInject;
import org.apache.ambari.server.checks.AbstractCheckDescriptor;
import org.apache.ambari.server.checks.HostsHeartbeatCheck;
import org.apache.ambari.server.checks.HostsMasterMaintenanceCheck;
import org.apache.ambari.server.checks.HostsRepositoryVersionCheck;
+import org.apache.ambari.server.checks.SecondaryNamenodeDeletedCheck;
import org.apache.ambari.server.checks.ServicesDecommissionCheck;
-import org.apache.ambari.server.checks.ServicesMapReduceDistributedCacheCheck;
import org.apache.ambari.server.checks.ServicesMaintenanceModeCheck;
+import org.apache.ambari.server.checks.ServicesMapReduceDistributedCacheCheck;
import org.apache.ambari.server.checks.ServicesNamenodeHighAvailabilityCheck;
-import org.apache.ambari.server.checks.SecondaryNamenodeDeletedCheck;
import org.apache.ambari.server.checks.ServicesTezDistributedCacheCheck;
import org.apache.ambari.server.checks.ServicesUpCheck;
import org.apache.ambari.server.checks.ServicesYarnWorkPreservingCheck;
-import org.apache.ambari.server.state.CheckHelper;
import org.apache.ambari.server.controller.AmbariManagementController;
import org.apache.ambari.server.controller.PrereqCheckRequest;
import org.apache.ambari.server.controller.spi.NoSuchParentResourceException;
@@ -49,6 +48,7 @@ import org.apache.ambari.server.controller.spi.Resource.Type;
import org.apache.ambari.server.controller.spi.SystemException;
import org.apache.ambari.server.controller.spi.UnsupportedPropertyException;
import org.apache.ambari.server.controller.utilities.PropertyHelper;
+import org.apache.ambari.server.state.CheckHelper;
import org.apache.ambari.server.state.stack.PrerequisiteCheck;
import com.google.inject.Inject;
@@ -94,7 +94,9 @@ public class PreUpgradeCheckResourceProvider extends ReadOnlyResourceProvider {
private static ServicesTezDistributedCacheCheck servicesTezDistributedCacheCheck;
/**
- * List of the registered upgrade checks
+ * List of the registered upgrade checks. Make sure that if a check that
+ * depends on the result of another check comes earlier in the list.
+ * For example, MR2 and Tez distributed cache checks rely on NN-HA check passing.
*/
@SuppressWarnings("serial")
private final List<AbstractCheckDescriptor> updateChecksRegistry = new ArrayList<AbstractCheckDescriptor>() {
http://git-wip-us.apache.org/repos/asf/ambari/blob/5a2dbeab/ambari-server/src/main/java/org/apache/ambari/server/state/CheckHelper.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/state/CheckHelper.java b/ambari-server/src/main/java/org/apache/ambari/server/state/CheckHelper.java
index f4b0b52..abaf8e7 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/state/CheckHelper.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/state/CheckHelper.java
@@ -17,17 +17,18 @@
*/
package org.apache.ambari.server.state;
-import com.google.inject.Singleton;
+import java.util.ArrayList;
+import java.util.List;
+
import org.apache.ambari.server.ClusterNotFoundException;
import org.apache.ambari.server.checks.AbstractCheckDescriptor;
import org.apache.ambari.server.controller.PrereqCheckRequest;
-import org.apache.ambari.server.state.stack.PrerequisiteCheck;
import org.apache.ambari.server.state.stack.PrereqCheckStatus;
+import org.apache.ambari.server.state.stack.PrerequisiteCheck;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import java.util.ArrayList;
-import java.util.List;
+import com.google.inject.Singleton;
@Singleton
public class CheckHelper {
@@ -49,24 +50,41 @@ public class CheckHelper {
final List<PrerequisiteCheck> prerequisiteCheckResults = new ArrayList<PrerequisiteCheck>();
for (AbstractCheckDescriptor checkDescriptor : checksRegistry) {
final PrerequisiteCheck prerequisiteCheck = new PrerequisiteCheck(
- checkDescriptor.id, checkDescriptor.description,
- checkDescriptor.type, clusterName);
+ checkDescriptor.getDescription(), clusterName);
try {
if (checkDescriptor.isApplicable(request)) {
checkDescriptor.perform(prerequisiteCheck, request);
prerequisiteCheckResults.add(prerequisiteCheck);
+
+ request.addResult(checkDescriptor.getDescription(), prerequisiteCheck.getStatus());
}
} catch (ClusterNotFoundException ex) {
prerequisiteCheck.setStatus(PrereqCheckStatus.FAIL);
prerequisiteCheck.setFailReason("Cluster with name " + clusterName + " doesn't exists");
prerequisiteCheckResults.add(prerequisiteCheck);
+
+ request.addResult(checkDescriptor.getDescription(), prerequisiteCheck.getStatus());
} catch (Exception ex) {
- LOG.error("Check " + checkDescriptor.id + " failed", ex);
+ LOG.error("Check " + checkDescriptor.getDescription().name() + " failed", ex);
prerequisiteCheck.setStatus(PrereqCheckStatus.FAIL);
prerequisiteCheck.setFailReason("Unexpected server error happened");
prerequisiteCheckResults.add(prerequisiteCheck);
+
+ request.addResult(checkDescriptor.getDescription(), prerequisiteCheck.getStatus());
}
+
+
+
+
+
+
+
+
+
+
}
+
+
return prerequisiteCheckResults;
}
}
http://git-wip-us.apache.org/repos/asf/ambari/blob/5a2dbeab/ambari-server/src/main/java/org/apache/ambari/server/state/stack/PrerequisiteCheck.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/state/stack/PrerequisiteCheck.java b/ambari-server/src/main/java/org/apache/ambari/server/state/stack/PrerequisiteCheck.java
index 4ed2fb3..a538dd9 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/state/stack/PrerequisiteCheck.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/state/stack/PrerequisiteCheck.java
@@ -20,63 +20,61 @@ package org.apache.ambari.server.state.stack;
import java.util.ArrayList;
import java.util.List;
+import org.apache.ambari.server.checks.CheckDescription;
+
/**
* Contains information about performed prerequisite check.
*
*/
public class PrerequisiteCheck {
- private final String id;
- private final String description;
- private final PrereqCheckType type;
- private final String clusterName;
- private PrereqCheckStatus status = PrereqCheckStatus.PASS;
- private String failReason = "";
- private List<String> failedOn = new ArrayList<String>();
+ private final CheckDescription m_description;
+ private final String m_clusterName;
+ private PrereqCheckStatus m_status = PrereqCheckStatus.PASS;
+ private String m_failReason = "";
+ private List<String> m_failedOn = new ArrayList<String>();
- public PrerequisiteCheck(String id, String description, PrereqCheckType type, String clusterName) {
- this.id = id;
- this.description = description;
- this.type = type;
- this.clusterName = clusterName;
+ public PrerequisiteCheck(CheckDescription description, String clusterName) {
+ m_description = description;
+ m_clusterName = clusterName;
}
public String getId() {
- return id;
+ return m_description.name();
}
public String getDescription() {
- return description;
+ return m_description.getText();
}
public PrereqCheckStatus getStatus() {
- return status;
+ return m_status;
}
public void setStatus(PrereqCheckStatus status) {
- this.status = status;
+ m_status = status;
}
public String getFailReason() {
- return failReason;
+ return m_failReason;
}
public void setFailReason(String failReason) {
- this.failReason = failReason;
+ m_failReason = failReason;
}
public List<String> getFailedOn() {
- return failedOn;
+ return m_failedOn;
}
public void setFailedOn(List<String> failedOn) {
- this.failedOn = failedOn;
+ m_failedOn = failedOn;
}
public PrereqCheckType getType() {
- return type;
+ return m_description.getType();
}
public String getClusterName() {
- return clusterName;
+ return m_clusterName;
}
}
http://git-wip-us.apache.org/repos/asf/ambari/blob/5a2dbeab/ambari-server/src/test/java/org/apache/ambari/server/checks/AbstractCheckDescriptorTest.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/checks/AbstractCheckDescriptorTest.java b/ambari-server/src/test/java/org/apache/ambari/server/checks/AbstractCheckDescriptorTest.java
index 716d033..4834cee 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/checks/AbstractCheckDescriptorTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/checks/AbstractCheckDescriptorTest.java
@@ -34,9 +34,15 @@ import org.junit.Test;
public class AbstractCheckDescriptorTest {
private class TestCheckImpl extends AbstractCheckDescriptor {
+ private PrereqCheckType m_type;
+ public TestCheckImpl(PrereqCheckType type) {
+ super(null);
+ m_type = type;
+ }
- public TestCheckImpl(String id, PrereqCheckType type, String description) {
- super(id, type, description);
+ @Override
+ public PrereqCheckType getType() {
+ return m_type;
}
@Override
@@ -47,7 +53,7 @@ public class AbstractCheckDescriptorTest {
@Test
public void testFormatEntityList() {
- AbstractCheckDescriptor check = new TestCheckImpl(null, PrereqCheckType.HOST, null);
+ AbstractCheckDescriptor check = new TestCheckImpl(PrereqCheckType.HOST);
Assert.assertEquals("", check.formatEntityList(null));
@@ -55,21 +61,21 @@ public class AbstractCheckDescriptorTest {
Assert.assertEquals("", check.formatEntityList(failedOn));
failedOn.add("host1");
- Assert.assertEquals("host1 host", check.formatEntityList(failedOn));
+ Assert.assertEquals("host1", check.formatEntityList(failedOn));
failedOn.add("host2");
- Assert.assertEquals("host1 and host2 hosts", check.formatEntityList(failedOn));
+ Assert.assertEquals("host1 and host2", check.formatEntityList(failedOn));
failedOn.add("host3");
- Assert.assertEquals("host1, host2 and host3 hosts", check.formatEntityList(failedOn));
+ Assert.assertEquals("host1, host2 and host3", check.formatEntityList(failedOn));
- check = new TestCheckImpl(null, PrereqCheckType.CLUSTER, null);
- Assert.assertEquals("host1, host2 and host3 clusters", check.formatEntityList(failedOn));
+ check = new TestCheckImpl(PrereqCheckType.CLUSTER);
+ Assert.assertEquals("host1, host2 and host3", check.formatEntityList(failedOn));
- check = new TestCheckImpl(null, PrereqCheckType.SERVICE, null);
- Assert.assertEquals("host1, host2 and host3 services", check.formatEntityList(failedOn));
+ check = new TestCheckImpl(PrereqCheckType.SERVICE);
+ Assert.assertEquals("host1, host2 and host3", check.formatEntityList(failedOn));
- check = new TestCheckImpl(null, null, null);
+ check = new TestCheckImpl(null);
Assert.assertEquals("host1, host2 and host3", check.formatEntityList(failedOn));
}
http://git-wip-us.apache.org/repos/asf/ambari/blob/5a2dbeab/ambari-server/src/test/java/org/apache/ambari/server/checks/HostsHeartbeatCheckTest.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/checks/HostsHeartbeatCheckTest.java b/ambari-server/src/test/java/org/apache/ambari/server/checks/HostsHeartbeatCheckTest.java
index fa20373..0b77bcb 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/checks/HostsHeartbeatCheckTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/checks/HostsHeartbeatCheckTest.java
@@ -82,12 +82,12 @@ public class HostsHeartbeatCheckTest {
hosts.put("host3", host3);
Mockito.when(clusters.getHostsForCluster("cluster")).thenReturn(hosts);
- PrerequisiteCheck check = new PrerequisiteCheck(null, null, null, null);
+ PrerequisiteCheck check = new PrerequisiteCheck(null, null);
hostHeartbeatCheck.perform(check, new PrereqCheckRequest("cluster"));
Assert.assertEquals(PrereqCheckStatus.FAIL, check.getStatus());
Mockito.when(status3.getHealthStatus()).thenReturn(HealthStatus.HEALTHY);
- check = new PrerequisiteCheck(null, null, null, null);
+ check = new PrerequisiteCheck(null, null);
hostHeartbeatCheck.perform(check, new PrereqCheckRequest("cluster"));
Assert.assertEquals(PrereqCheckStatus.PASS, check.getStatus());
http://git-wip-us.apache.org/repos/asf/ambari/blob/5a2dbeab/ambari-server/src/test/java/org/apache/ambari/server/checks/HostsMasterMaintenanceCheckTest.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/checks/HostsMasterMaintenanceCheckTest.java b/ambari-server/src/test/java/org/apache/ambari/server/checks/HostsMasterMaintenanceCheckTest.java
index 9444aa3..fc0f9bc 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/checks/HostsMasterMaintenanceCheckTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/checks/HostsMasterMaintenanceCheckTest.java
@@ -94,14 +94,14 @@ public class HostsMasterMaintenanceCheckTest {
Mockito.when(cluster.getDesiredStackVersion()).thenReturn(new StackId("HDP", "1.0"));
Mockito.when(repositoryVersionHelper.getUpgradePackageName(Mockito.anyString(), Mockito.anyString(), Mockito.anyString())).thenReturn(null);
- PrerequisiteCheck check = new PrerequisiteCheck(null, null, null, null);
+ PrerequisiteCheck check = new PrerequisiteCheck(null, null);
hostsMasterMaintenanceCheck.perform(check, new PrereqCheckRequest("cluster"));
Assert.assertEquals(PrereqCheckStatus.FAIL, check.getStatus());
Mockito.when(repositoryVersionHelper.getUpgradePackageName(Mockito.anyString(), Mockito.anyString(), Mockito.anyString())).thenReturn("upgrade pack");
Mockito.when(ambariMetaInfo.getUpgradePacks(Mockito.anyString(), Mockito.anyString())).thenReturn(new HashMap<String, UpgradePack>());
- check = new PrerequisiteCheck(null, null, null, null);
+ check = new PrerequisiteCheck(null, null);
hostsMasterMaintenanceCheck.perform(check, new PrereqCheckRequest("cluster"));
Assert.assertEquals(PrereqCheckStatus.FAIL, check.getStatus());
@@ -113,7 +113,7 @@ public class HostsMasterMaintenanceCheckTest {
Mockito.when(cluster.getServices()).thenReturn(new HashMap<String, Service>());
Mockito.when(clusters.getHostsForCluster(Mockito.anyString())).thenReturn(new HashMap<String, Host>());
- check = new PrerequisiteCheck(null, null, null, null);
+ check = new PrerequisiteCheck(null, null);
hostsMasterMaintenanceCheck.perform(check, new PrereqCheckRequest("cluster"));
Assert.assertEquals(PrereqCheckStatus.PASS, check.getStatus());
}
http://git-wip-us.apache.org/repos/asf/ambari/blob/5a2dbeab/ambari-server/src/test/java/org/apache/ambari/server/checks/HostsRepositoryVersionCheckTest.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/checks/HostsRepositoryVersionCheckTest.java b/ambari-server/src/test/java/org/apache/ambari/server/checks/HostsRepositoryVersionCheckTest.java
index 02fd01e..f70d9fc 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/checks/HostsRepositoryVersionCheckTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/checks/HostsRepositoryVersionCheckTest.java
@@ -98,7 +98,7 @@ public class HostsRepositoryVersionCheckTest {
Mockito.when(clusters.getHostsForCluster("cluster")).thenReturn(hosts);
Mockito.when(repositoryVersionDAO.findByStackAndVersion(Mockito.anyString(), Mockito.anyString())).thenReturn(null);
- PrerequisiteCheck check = new PrerequisiteCheck(null, null, null, null);
+ PrerequisiteCheck check = new PrerequisiteCheck(null, null);
hostsRepositoryVersionCheck.perform(check, new PrereqCheckRequest("cluster"));
Assert.assertEquals(PrereqCheckStatus.FAIL, check.getStatus());
@@ -108,7 +108,7 @@ public class HostsRepositoryVersionCheckTest {
hostVersion.setState(RepositoryVersionState.INSTALLED);
Mockito.when(hostVersionDAO.findByClusterStackVersionAndHost(Mockito.anyString(), Mockito.anyString(), Mockito.anyString(), Mockito.anyString())).thenReturn(hostVersion);
- check = new PrerequisiteCheck(null, null, null, null);
+ check = new PrerequisiteCheck(null, null);
hostsRepositoryVersionCheck.perform(check, new PrereqCheckRequest("cluster"));
Assert.assertEquals(PrereqCheckStatus.PASS, check.getStatus());
}
http://git-wip-us.apache.org/repos/asf/ambari/blob/5a2dbeab/ambari-server/src/test/java/org/apache/ambari/server/checks/SecondaryNamenodeDeletedCheckTest.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/checks/SecondaryNamenodeDeletedCheckTest.java b/ambari-server/src/test/java/org/apache/ambari/server/checks/SecondaryNamenodeDeletedCheckTest.java
index 4938468..631ca8a 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/checks/SecondaryNamenodeDeletedCheckTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/checks/SecondaryNamenodeDeletedCheckTest.java
@@ -20,6 +20,7 @@ package org.apache.ambari.server.checks;
import java.util.Collections;
import org.apache.ambari.server.ServiceNotFoundException;
+import org.apache.ambari.server.api.services.AmbariMetaInfo;
import org.apache.ambari.server.controller.PrereqCheckRequest;
import org.apache.ambari.server.orm.dao.HostComponentStateDAO;
import org.apache.ambari.server.state.Cluster;
@@ -49,13 +50,19 @@ public class SecondaryNamenodeDeletedCheckTest {
@Before
public void setup() {
secondaryNamenodeDeletedCheck.clustersProvider = new Provider<Clusters>() {
-
@Override
public Clusters get() {
return clusters;
}
};
+ secondaryNamenodeDeletedCheck.ambariMetaInfo = new Provider<AmbariMetaInfo>() {
+ @Override
+ public AmbariMetaInfo get() {
+ return Mockito.mock(AmbariMetaInfo.class);
+ }
+ };
+
secondaryNamenodeDeletedCheck.hostComponentStateDao = hostComponentStateDAO;
}
@@ -69,6 +76,17 @@ public class SecondaryNamenodeDeletedCheckTest {
Mockito.when(cluster.getService("HDFS")).thenReturn(service);
Assert.assertTrue(secondaryNamenodeDeletedCheck.isApplicable(new PrereqCheckRequest("cluster")));
+ PrereqCheckRequest req = new PrereqCheckRequest("cluster");
+ req.addResult(CheckDescription.SERVICES_NAMENODE_HA, PrereqCheckStatus.FAIL);
+ Mockito.when(cluster.getService("HDFS")).thenReturn(service);
+ Assert.assertFalse(secondaryNamenodeDeletedCheck.isApplicable(req));
+
+ req.addResult(CheckDescription.SERVICES_NAMENODE_HA, PrereqCheckStatus.PASS);
+ Mockito.when(cluster.getService("HDFS")).thenReturn(service);
+ Assert.assertTrue(secondaryNamenodeDeletedCheck.isApplicable(req));
+
+
+
Mockito.when(cluster.getService("HDFS")).thenThrow(new ServiceNotFoundException("no", "service"));
Assert.assertFalse(secondaryNamenodeDeletedCheck.isApplicable(new PrereqCheckRequest("cluster")));
}
@@ -85,12 +103,12 @@ public class SecondaryNamenodeDeletedCheckTest {
Mockito.when(service.getServiceComponent("SECONDARY_NAMENODE")).thenReturn(serviceComponent);
Mockito.when(serviceComponent.getServiceComponentHosts()).thenReturn(Collections.<String, ServiceComponentHost>singletonMap("host", null));
- PrerequisiteCheck check = new PrerequisiteCheck(null, null, null, null);
+ PrerequisiteCheck check = new PrerequisiteCheck(null, null);
secondaryNamenodeDeletedCheck.perform(check, new PrereqCheckRequest("cluster"));
Assert.assertEquals(PrereqCheckStatus.FAIL, check.getStatus());
Mockito.when(serviceComponent.getServiceComponentHosts()).thenReturn(Collections.<String, ServiceComponentHost> emptyMap());
- check = new PrerequisiteCheck(null, null, null, null);
+ check = new PrerequisiteCheck(null, null);
secondaryNamenodeDeletedCheck.perform(check, new PrereqCheckRequest("cluster"));
Assert.assertEquals(PrereqCheckStatus.PASS, check.getStatus());
}
http://git-wip-us.apache.org/repos/asf/ambari/blob/5a2dbeab/ambari-server/src/test/java/org/apache/ambari/server/checks/ServicesDecommissionCheckTest.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/checks/ServicesDecommissionCheckTest.java b/ambari-server/src/test/java/org/apache/ambari/server/checks/ServicesDecommissionCheckTest.java
index 71e61e2..151648f 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/checks/ServicesDecommissionCheckTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/checks/ServicesDecommissionCheckTest.java
@@ -21,6 +21,7 @@ import java.util.Collections;
import java.util.HashMap;
import java.util.Map;
+import org.apache.ambari.server.api.services.AmbariMetaInfo;
import org.apache.ambari.server.controller.PrereqCheckRequest;
import org.apache.ambari.server.state.Cluster;
import org.apache.ambari.server.state.Clusters;
@@ -58,6 +59,13 @@ public class ServicesDecommissionCheckTest {
return clusters;
}
};
+ servicesDecommissionCheck.ambariMetaInfo = new Provider<AmbariMetaInfo>() {
+ @Override
+ public AmbariMetaInfo get() {
+ return Mockito.mock(AmbariMetaInfo.class);
+ }
+ };
+
final Cluster cluster = Mockito.mock(Cluster.class);
Mockito.when(cluster.getClusterId()).thenReturn(1L);
Mockito.when(clusters.getCluster("cluster")).thenReturn(cluster);
@@ -78,12 +86,12 @@ public class ServicesDecommissionCheckTest {
Mockito.when(serviceComponentHost1.getComponentAdminState()).thenReturn(HostComponentAdminState.DECOMMISSIONED);
Mockito.when(serviceComponentHost2.getComponentAdminState()).thenReturn(HostComponentAdminState.INSERVICE);
- PrerequisiteCheck check = new PrerequisiteCheck(null, null, null, null);
+ PrerequisiteCheck check = new PrerequisiteCheck(null, null);
servicesDecommissionCheck.perform(check, new PrereqCheckRequest("cluster"));
Assert.assertEquals(PrereqCheckStatus.FAIL, check.getStatus());
Mockito.when(serviceComponentHost1.getComponentAdminState()).thenReturn(HostComponentAdminState.INSERVICE);
- check = new PrerequisiteCheck(null, null, null, null);
+ check = new PrerequisiteCheck(null, null);
servicesDecommissionCheck.perform(check, new PrereqCheckRequest("cluster"));
Assert.assertEquals(PrereqCheckStatus.PASS, check.getStatus());
}
http://git-wip-us.apache.org/repos/asf/ambari/blob/5a2dbeab/ambari-server/src/test/java/org/apache/ambari/server/checks/ServicesMaintenanceModeCheckTest.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/checks/ServicesMaintenanceModeCheckTest.java b/ambari-server/src/test/java/org/apache/ambari/server/checks/ServicesMaintenanceModeCheckTest.java
index c8c8bd8..ff4e36f 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/checks/ServicesMaintenanceModeCheckTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/checks/ServicesMaintenanceModeCheckTest.java
@@ -19,6 +19,7 @@ package org.apache.ambari.server.checks;
import java.util.Collections;
+import org.apache.ambari.server.api.services.AmbariMetaInfo;
import org.apache.ambari.server.controller.PrereqCheckRequest;
import org.apache.ambari.server.state.Cluster;
import org.apache.ambari.server.state.Clusters;
@@ -54,6 +55,14 @@ public class ServicesMaintenanceModeCheckTest {
return clusters;
}
};
+
+ servicesMaintenanceModeCheck.ambariMetaInfo = new Provider<AmbariMetaInfo>() {
+ @Override
+ public AmbariMetaInfo get() {
+ return Mockito.mock(AmbariMetaInfo.class);
+ }
+ };
+
final Cluster cluster = Mockito.mock(Cluster.class);
Mockito.when(cluster.getClusterId()).thenReturn(1L);
Mockito.when(clusters.getCluster("cluster")).thenReturn(cluster);
@@ -62,12 +71,12 @@ public class ServicesMaintenanceModeCheckTest {
Mockito.when(service.isClientOnlyService()).thenReturn(false);
Mockito.when(service.getDesiredState()).thenReturn(State.UNKNOWN);
- PrerequisiteCheck check = new PrerequisiteCheck(null, null, null, null);
+ PrerequisiteCheck check = new PrerequisiteCheck(null, null);
servicesMaintenanceModeCheck.perform(check, new PrereqCheckRequest("cluster"));
Assert.assertEquals(PrereqCheckStatus.FAIL, check.getStatus());
Mockito.when(service.getDesiredState()).thenReturn(State.STARTED);
- check = new PrerequisiteCheck(null, null, null, null);
+ check = new PrerequisiteCheck(null, null);
servicesMaintenanceModeCheck.perform(check, new PrereqCheckRequest("cluster"));
Assert.assertEquals(PrereqCheckStatus.PASS, check.getStatus());
}
http://git-wip-us.apache.org/repos/asf/ambari/blob/5a2dbeab/ambari-server/src/test/java/org/apache/ambari/server/checks/ServicesMapReduceDistributedCacheCheckTest.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/checks/ServicesMapReduceDistributedCacheCheckTest.java b/ambari-server/src/test/java/org/apache/ambari/server/checks/ServicesMapReduceDistributedCacheCheckTest.java
index a8a09bd..acc9776 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/checks/ServicesMapReduceDistributedCacheCheckTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/checks/ServicesMapReduceDistributedCacheCheckTest.java
@@ -17,7 +17,6 @@
*/
package org.apache.ambari.server.checks;
-import java.util.Collections;
import java.util.HashMap;
import java.util.Map;
@@ -67,6 +66,16 @@ public class ServicesMapReduceDistributedCacheCheckTest {
Mockito.when(cluster.getService("YARN")).thenReturn(service);
Assert.assertTrue(servicesMapReduceDistributedCacheCheck.isApplicable(new PrereqCheckRequest("cluster")));
+ PrereqCheckRequest req = new PrereqCheckRequest("cluster");
+ req.addResult(CheckDescription.SERVICES_NAMENODE_HA, PrereqCheckStatus.FAIL);
+ Mockito.when(cluster.getService("YARN")).thenReturn(service);
+ Assert.assertFalse(servicesMapReduceDistributedCacheCheck.isApplicable(req));
+
+ req.addResult(CheckDescription.SERVICES_NAMENODE_HA, PrereqCheckStatus.PASS);
+ Mockito.when(cluster.getService("YARN")).thenReturn(service);
+ Assert.assertTrue(servicesMapReduceDistributedCacheCheck.isApplicable(req));
+
+
Mockito.when(cluster.getService("YARN")).thenThrow(new ServiceNotFoundException("no", "service"));
Assert.assertFalse(servicesMapReduceDistributedCacheCheck.isApplicable(new PrereqCheckRequest("cluster")));
}
@@ -88,35 +97,35 @@ public class ServicesMapReduceDistributedCacheCheckTest {
final Map<String, String> properties = new HashMap<String, String>();
Mockito.when(config.getProperties()).thenReturn(properties);
- PrerequisiteCheck check = new PrerequisiteCheck(null, null, null, null);
+ PrerequisiteCheck check = new PrerequisiteCheck(null, null);
servicesMapReduceDistributedCacheCheck.perform(check, new PrereqCheckRequest("cluster"));
Assert.assertEquals(PrereqCheckStatus.FAIL, check.getStatus());
properties.put("fs.defaultFS", "anything");
properties.put("mapreduce.application.framework.path", "hdfs://some/path");
properties.put("mapreduce.application.classpath", "anything");
- check = new PrerequisiteCheck(null, null, null, null);
+ check = new PrerequisiteCheck(null, null);
servicesMapReduceDistributedCacheCheck.perform(check, new PrereqCheckRequest("cluster"));
Assert.assertEquals(PrereqCheckStatus.PASS, check.getStatus());
properties.put("fs.defaultFS", "anything");
properties.put("mapreduce.application.framework.path", "dfs://some/path");
properties.put("mapreduce.application.classpath", "anything");
- check = new PrerequisiteCheck(null, null, null, null);
+ check = new PrerequisiteCheck(null, null);
servicesMapReduceDistributedCacheCheck.perform(check, new PrereqCheckRequest("cluster"));
Assert.assertEquals(PrereqCheckStatus.PASS, check.getStatus());
properties.put("fs.defaultFS", "hdfs://ha");
properties.put("mapreduce.application.framework.path", "/some/path");
properties.put("mapreduce.application.classpath", "anything");
- check = new PrerequisiteCheck(null, null, null, null);
+ check = new PrerequisiteCheck(null, null);
servicesMapReduceDistributedCacheCheck.perform(check, new PrereqCheckRequest("cluster"));
Assert.assertEquals(PrereqCheckStatus.PASS, check.getStatus());
properties.put("fs.defaultFS", "dfs://ha");
properties.put("mapreduce.application.framework.path", "/some/path");
properties.put("mapreduce.application.classpath", "anything");
- check = new PrerequisiteCheck(null, null, null, null);
+ check = new PrerequisiteCheck(null, null);
servicesMapReduceDistributedCacheCheck.perform(check, new PrereqCheckRequest("cluster"));
Assert.assertEquals(PrereqCheckStatus.PASS, check.getStatus());
@@ -124,7 +133,7 @@ public class ServicesMapReduceDistributedCacheCheckTest {
properties.put("fs.defaultFS", "anything");
properties.put("mapreduce.application.framework.path", "/some/path");
properties.put("mapreduce.application.classpath", "anything");
- check = new PrerequisiteCheck(null, null, null, null);
+ check = new PrerequisiteCheck(null, null);
servicesMapReduceDistributedCacheCheck.perform(check, new PrereqCheckRequest("cluster"));
Assert.assertEquals(PrereqCheckStatus.FAIL, check.getStatus());
}
http://git-wip-us.apache.org/repos/asf/ambari/blob/5a2dbeab/ambari-server/src/test/java/org/apache/ambari/server/checks/ServicesNamenodeHighAvailabilityCheckTest.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/checks/ServicesNamenodeHighAvailabilityCheckTest.java b/ambari-server/src/test/java/org/apache/ambari/server/checks/ServicesNamenodeHighAvailabilityCheckTest.java
index c1b2022..85ebc79 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/checks/ServicesNamenodeHighAvailabilityCheckTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/checks/ServicesNamenodeHighAvailabilityCheckTest.java
@@ -85,12 +85,12 @@ public class ServicesNamenodeHighAvailabilityCheckTest {
final Map<String, String> properties = new HashMap<String, String>();
Mockito.when(config.getProperties()).thenReturn(properties);
- PrerequisiteCheck check = new PrerequisiteCheck(null, null, null, null);
+ PrerequisiteCheck check = new PrerequisiteCheck(null, null);
servicesNamenodeHighAvailabilityCheck.perform(check, new PrereqCheckRequest("cluster"));
Assert.assertEquals(PrereqCheckStatus.FAIL, check.getStatus());
properties.put("dfs.nameservices", "anything");
- check = new PrerequisiteCheck(null, null, null, null);
+ check = new PrerequisiteCheck(null, null);
servicesNamenodeHighAvailabilityCheck.perform(check, new PrereqCheckRequest("cluster"));
Assert.assertEquals(PrereqCheckStatus.PASS, check.getStatus());
}
http://git-wip-us.apache.org/repos/asf/ambari/blob/5a2dbeab/ambari-server/src/test/java/org/apache/ambari/server/checks/ServicesTezDistributedCacheCheckTest.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/checks/ServicesTezDistributedCacheCheckTest.java b/ambari-server/src/test/java/org/apache/ambari/server/checks/ServicesTezDistributedCacheCheckTest.java
index c4dcc5e..88584f7 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/checks/ServicesTezDistributedCacheCheckTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/checks/ServicesTezDistributedCacheCheckTest.java
@@ -17,7 +17,6 @@
*/
package org.apache.ambari.server.checks;
-import java.util.Collections;
import java.util.HashMap;
import java.util.Map;
@@ -67,8 +66,20 @@ public class ServicesTezDistributedCacheCheckTest {
Mockito.when(cluster.getService("TEZ")).thenReturn(service);
Assert.assertTrue(servicesTezDistributedCacheCheck.isApplicable(new PrereqCheckRequest("cluster")));
+ PrereqCheckRequest req = new PrereqCheckRequest("cluster");
+ req.addResult(CheckDescription.SERVICES_NAMENODE_HA, PrereqCheckStatus.FAIL);
+ Mockito.when(cluster.getService("TEZ")).thenReturn(service);
+ Assert.assertFalse(servicesTezDistributedCacheCheck.isApplicable(req));
+
+ req.addResult(CheckDescription.SERVICES_NAMENODE_HA, PrereqCheckStatus.PASS);
+ Mockito.when(cluster.getService("TEZ")).thenReturn(service);
+ Assert.assertTrue(servicesTezDistributedCacheCheck.isApplicable(req));
+
+
Mockito.when(cluster.getService("TEZ")).thenThrow(new ServiceNotFoundException("no", "service"));
Assert.assertFalse(servicesTezDistributedCacheCheck.isApplicable(new PrereqCheckRequest("cluster")));
+
+
}
@Test
@@ -88,35 +99,35 @@ public class ServicesTezDistributedCacheCheckTest {
final Map<String, String> properties = new HashMap<String, String>();
Mockito.when(config.getProperties()).thenReturn(properties);
- PrerequisiteCheck check = new PrerequisiteCheck(null, null, null, null);
+ PrerequisiteCheck check = new PrerequisiteCheck(null, null);
servicesTezDistributedCacheCheck.perform(check, new PrereqCheckRequest("cluster"));
Assert.assertEquals(PrereqCheckStatus.FAIL, check.getStatus());
properties.put("fs.defaultFS", "anything");
properties.put("tez.lib.uris", "hdfs://some/path/to/archive.tar.gz");
properties.put("tez.use.cluster.hadoop-libs", "false");
- check = new PrerequisiteCheck(null, null, null, null);
+ check = new PrerequisiteCheck(null, null);
servicesTezDistributedCacheCheck.perform(check, new PrereqCheckRequest("cluster"));
Assert.assertEquals(PrereqCheckStatus.PASS, check.getStatus());
properties.put("fs.defaultFS", "anything");
properties.put("tez.lib.uris", "dfs://some/path/to/archive.tar.gz");
properties.put("tez.use.cluster.hadoop-libs", "false");
- check = new PrerequisiteCheck(null, null, null, null);
+ check = new PrerequisiteCheck(null, null);
servicesTezDistributedCacheCheck.perform(check, new PrereqCheckRequest("cluster"));
Assert.assertEquals(PrereqCheckStatus.PASS, check.getStatus());
properties.put("fs.defaultFS", "dfs://ha");
properties.put("tez.lib.uris", "/some/path/to/archive.tar.gz");
properties.put("tez.use.cluster.hadoop-libs", "false");
- check = new PrerequisiteCheck(null, null, null, null);
+ check = new PrerequisiteCheck(null, null);
servicesTezDistributedCacheCheck.perform(check, new PrereqCheckRequest("cluster"));
Assert.assertEquals(PrereqCheckStatus.PASS, check.getStatus());
properties.put("fs.defaultFS", "hdfs://ha");
properties.put("tez.lib.uris", "/some/path/to/archive.tar.gz");
properties.put("tez.use.cluster.hadoop-libs", "false");
- check = new PrerequisiteCheck(null, null, null, null);
+ check = new PrerequisiteCheck(null, null);
servicesTezDistributedCacheCheck.perform(check, new PrereqCheckRequest("cluster"));
Assert.assertEquals(PrereqCheckStatus.PASS, check.getStatus());
@@ -124,7 +135,7 @@ public class ServicesTezDistributedCacheCheckTest {
properties.put("fs.defaultFS", "anything");
properties.put("tez.lib.uris", "/some/path/to/archive.tar.gz");
properties.put("tez.use.cluster.hadoop-libs", "false");
- check = new PrerequisiteCheck(null, null, null, null);
+ check = new PrerequisiteCheck(null, null);
servicesTezDistributedCacheCheck.perform(check, new PrereqCheckRequest("cluster"));
Assert.assertEquals(PrereqCheckStatus.FAIL, check.getStatus());
@@ -132,7 +143,7 @@ public class ServicesTezDistributedCacheCheckTest {
properties.put("fs.defaultFS", "hdfs://ha");
properties.put("tez.lib.uris", "/some/path/to/archive.log");
properties.put("tez.use.cluster.hadoop-libs", "false");
- check = new PrerequisiteCheck(null, null, null, null);
+ check = new PrerequisiteCheck(null, null);
servicesTezDistributedCacheCheck.perform(check, new PrereqCheckRequest("cluster"));
Assert.assertEquals(PrereqCheckStatus.FAIL, check.getStatus());
@@ -140,7 +151,7 @@ public class ServicesTezDistributedCacheCheckTest {
properties.put("fs.defaultFS", "hdfs://ha");
properties.put("tez.lib.uris", "/some/path/to/archive.tar.gz");
properties.put("tez.use.cluster.hadoop-libs", "true");
- check = new PrerequisiteCheck(null, null, null, null);
+ check = new PrerequisiteCheck(null, null);
servicesTezDistributedCacheCheck.perform(check, new PrereqCheckRequest("cluster"));
Assert.assertEquals(PrereqCheckStatus.FAIL, check.getStatus());
}