You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by sw...@apache.org on 2013/03/22 21:42:13 UTC
svn commit: r1459976 - in /incubator/ambari/trunk: ./
ambari-server/src/main/java/org/apache/ambari/server/controller/
ambari-server/src/main/java/org/apache/ambari/server/controller/internal/
ambari-server/src/main/resources/ ambari-server/src/test/ja...
Author: swagle
Date: Fri Mar 22 20:42:13 2013
New Revision: 1459976
URL: http://svn.apache.org/r1459976
Log:
AMBARI-1685. Remove running of smoke tests by default when services or master components are started. (Sumit Mohanty via swagle)
Modified:
incubator/ambari/trunk/CHANGES.txt
incubator/ambari/trunk/ambari-server/src/main/java/org/apache/ambari/server/controller/AmbariManagementController.java
incubator/ambari/trunk/ambari-server/src/main/java/org/apache/ambari/server/controller/AmbariManagementControllerImpl.java
incubator/ambari/trunk/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/AbstractControllerResourceProvider.java
incubator/ambari/trunk/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ComponentResourceProvider.java
incubator/ambari/trunk/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/HostComponentResourceProvider.java
incubator/ambari/trunk/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ServiceResourceProvider.java
incubator/ambari/trunk/ambari-server/src/main/resources/properties.json
incubator/ambari/trunk/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerImplTest.java
incubator/ambari/trunk/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerTest.java
incubator/ambari/trunk/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/AbstractControllerResourceProviderTest.java
incubator/ambari/trunk/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ComponentResourceProviderTest.java
incubator/ambari/trunk/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/HostComponentResourceProviderTest.java
incubator/ambari/trunk/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/JMXHostProviderTest.java
incubator/ambari/trunk/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ServiceResourceProviderTest.java
Modified: incubator/ambari/trunk/CHANGES.txt
URL: http://svn.apache.org/viewvc/incubator/ambari/trunk/CHANGES.txt?rev=1459976&r1=1459975&r2=1459976&view=diff
==============================================================================
--- incubator/ambari/trunk/CHANGES.txt (original)
+++ incubator/ambari/trunk/CHANGES.txt Fri Mar 22 20:42:13 2013
@@ -509,6 +509,9 @@ Trunk (unreleased changes):
BUG FIXES
+ AMBARI-1685. Remove running of smoke tests by default when services or
+ master components are started. (Sumit Mohanty via swagle)
+
AMBARI-1688. API support to return 10 most recent requests. (swagle)
AMBARI-1439. rrd file location should be read from global config.
Modified: incubator/ambari/trunk/ambari-server/src/main/java/org/apache/ambari/server/controller/AmbariManagementController.java
URL: http://svn.apache.org/viewvc/incubator/ambari/trunk/ambari-server/src/main/java/org/apache/ambari/server/controller/AmbariManagementController.java?rev=1459976&r1=1459975&r2=1459976&view=diff
==============================================================================
--- incubator/ambari/trunk/ambari-server/src/main/java/org/apache/ambari/server/controller/AmbariManagementController.java (original)
+++ incubator/ambari/trunk/ambari-server/src/main/java/org/apache/ambari/server/controller/AmbariManagementController.java Fri Mar 22 20:42:13 2013
@@ -256,24 +256,27 @@ public interface AmbariManagementControl
*
* @throws AmbariException thrown if the resource cannot be updated
*/
- public RequestStatusResponse updateServices(Set<ServiceRequest> requests, Map<String, String> requestProperties)
- throws AmbariException;
+ public RequestStatusResponse updateServices(Set<ServiceRequest> requests,
+ Map<String, String> requestProperties, boolean runSmokeTest) throws AmbariException;
/**
* Update the component identified by the given request object with the
* values carried by the given request object.
*
*
+ *
* @param requests the request object which defines which component to
* update and the values to set
*
* @param requestProperties
+ * @param runSmokeTest
* @return a track action response
*
* @throws AmbariException thrown if the resource cannot be updated
*/
public RequestStatusResponse updateComponents(
- Set<ServiceComponentRequest> requests, Map<String, String> requestProperties) throws AmbariException;
+ Set<ServiceComponentRequest> requests, Map<String, String> requestProperties,
+ boolean runSmokeTest) throws AmbariException;
/**
* Update the host identified by the given request object with the
@@ -292,16 +295,18 @@ public interface AmbariManagementControl
* values carried by the given request object.
*
*
+ *
* @param requests the request object which defines which host component to
* update and the values to set
*
* @param requestProperties
+ * @param runSmokeTest
* @return a track action response
*
* @throws AmbariException thrown if the resource cannot be updated
*/
public RequestStatusResponse updateHostComponents(
- Set<ServiceComponentHostRequest> requests, Map<String, String> requestProperties) throws AmbariException;
+ Set<ServiceComponentHostRequest> requests, Map<String, String> requestProperties, boolean runSmokeTest) throws AmbariException;
/**
* Updates the users specified.
Modified: incubator/ambari/trunk/ambari-server/src/main/java/org/apache/ambari/server/controller/AmbariManagementControllerImpl.java
URL: http://svn.apache.org/viewvc/incubator/ambari/trunk/ambari-server/src/main/java/org/apache/ambari/server/controller/AmbariManagementControllerImpl.java?rev=1459976&r1=1459975&r2=1459976&view=diff
==============================================================================
--- incubator/ambari/trunk/ambari-server/src/main/java/org/apache/ambari/server/controller/AmbariManagementControllerImpl.java (original)
+++ incubator/ambari/trunk/ambari-server/src/main/java/org/apache/ambari/server/controller/AmbariManagementControllerImpl.java Fri Mar 22 20:42:13 2013
@@ -1533,7 +1533,7 @@ public class AmbariManagementControllerI
LOG.info("Creating stages for upgrade.");
List<Stage> stages = doStageCreation(cluster, changedServices, changedComps, changedScHosts,
- requestParameters, requestProperties.get(REQUEST_CONTEXT_PROPERTY));
+ requestParameters, requestProperties.get(REQUEST_CONTEXT_PROPERTY), false);
if (stages == null || stages.isEmpty()) {
return null;
@@ -1716,7 +1716,7 @@ public class AmbariManagementControllerI
Map<State, List<Service>> changedServices,
Map<State, List<ServiceComponent>> changedComps,
Map<String, Map<State, List<ServiceComponentHost>>> changedScHosts,
- Map<String, String> requestParameters, String requestContext)
+ Map<String, String> requestParameters, String requestContext, boolean runSmokeTest)
throws AmbariException {
// TODO handle different transitions?
@@ -1746,7 +1746,7 @@ public class AmbariManagementControllerI
continue;
}
for (Service s : entry.getValue()) {
- if (State.INSTALLED == s.getDesiredState()) {
+ if (runSmokeTest && (State.INSTALLED == s.getDesiredState())) {
smokeTestServices.add(s.getName());
}
}
@@ -1789,7 +1789,7 @@ public class AmbariManagementControllerI
changedComponentCount.entrySet()) {
String serviceName = entry.getKey();
// smoke test service if more than one component is started
- if (entry.getValue().size() > 1) {
+ if (runSmokeTest && (entry.getValue().size() > 1)) {
smokeTestServices.add(serviceName);
continue;
}
@@ -1801,7 +1801,7 @@ public class AmbariManagementControllerI
ComponentInfo compInfo = ambariMetaInfo.getComponentCategory(
stackId.getStackName(), stackId.getStackVersion(), serviceName,
componentName);
- if (compInfo.isMaster()) {
+ if (runSmokeTest && compInfo.isMaster()) {
smokeTestServices.add(serviceName);
}
@@ -2217,8 +2217,8 @@ public class AmbariManagementControllerI
@Override
public synchronized RequestStatusResponse updateServices(
- Set<ServiceRequest> requests, Map<String, String> requestProperties)
- throws AmbariException {
+ Set<ServiceRequest> requests, Map<String, String> requestProperties,
+ boolean runSmokeTest) throws AmbariException {
if (requests.isEmpty()) {
LOG.warn("Received an empty requests set");
@@ -2493,8 +2493,9 @@ public class AmbariManagementControllerI
Cluster cluster = clusters.getCluster(clusterNames.iterator().next());
- List<Stage> stages = doStageCreation(cluster, changedServices,
- changedComps, changedScHosts, null, requestProperties.get(REQUEST_CONTEXT_PROPERTY));
+ List<Stage> stages = doStageCreation(cluster, changedServices, changedComps,
+ changedScHosts, null, requestProperties.get(REQUEST_CONTEXT_PROPERTY),
+ runSmokeTest);
persistStages(stages);
updateServiceStates(changedServices, changedComps, changedScHosts);
if (stages == null || stages.isEmpty()) {
@@ -2506,7 +2507,7 @@ public class AmbariManagementControllerI
@Override
public synchronized RequestStatusResponse updateComponents(Set<ServiceComponentRequest> requests,
- Map<String, String> requestProperties)
+ Map<String, String> requestProperties, boolean runSmokeTest)
throws AmbariException {
if (requests.isEmpty()) {
@@ -2773,7 +2774,7 @@ public class AmbariManagementControllerI
Cluster cluster = clusters.getCluster(clusterNames.iterator().next());
List<Stage> stages = doStageCreation(cluster, null,
- changedComps, changedScHosts, null, requestProperties.get(REQUEST_CONTEXT_PROPERTY));
+ changedComps, changedScHosts, null, requestProperties.get(REQUEST_CONTEXT_PROPERTY), runSmokeTest);
persistStages(stages);
updateServiceStates(null, changedComps, changedScHosts);
if (stages == null || stages.isEmpty()) {
@@ -2855,7 +2856,7 @@ public class AmbariManagementControllerI
@Override
public synchronized RequestStatusResponse updateHostComponents(Set<ServiceComponentHostRequest> requests,
- Map<String, String> requestProperties)
+ Map<String, String> requestProperties, boolean runSmokeTest)
throws AmbariException {
if (requests.isEmpty()) {
@@ -3147,7 +3148,7 @@ public class AmbariManagementControllerI
requestParameters.put(Configuration.UPGRADE_FROM_STACK, gson.toJson(fromStackVersion));
}
List<Stage> stages = doStageCreation(cluster, null, null, changedScHosts, requestParameters,
- requestProperties.get(REQUEST_CONTEXT_PROPERTY));
+ requestProperties.get(REQUEST_CONTEXT_PROPERTY), runSmokeTest);
persistStages(stages);
updateServiceStates(null, null, changedScHosts);
if (stages == null || stages.isEmpty()) {
Modified: incubator/ambari/trunk/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/AbstractControllerResourceProvider.java
URL: http://svn.apache.org/viewvc/incubator/ambari/trunk/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/AbstractControllerResourceProvider.java?rev=1459976&r1=1459975&r2=1459976&view=diff
==============================================================================
--- incubator/ambari/trunk/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/AbstractControllerResourceProvider.java (original)
+++ incubator/ambari/trunk/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/AbstractControllerResourceProvider.java Fri Mar 22 20:42:13 2013
@@ -19,6 +19,10 @@
package org.apache.ambari.server.controller.internal;
import org.apache.ambari.server.controller.AmbariManagementController;
+import org.apache.ambari.server.controller.predicate.ArrayPredicate;
+import org.apache.ambari.server.controller.predicate.ComparisonPredicate;
+import org.apache.ambari.server.controller.predicate.EqualsPredicate;
+import org.apache.ambari.server.controller.spi.Predicate;
import org.apache.ambari.server.controller.spi.Resource;
import org.apache.ambari.server.controller.spi.ResourceProvider;
@@ -119,4 +123,28 @@ public abstract class AbstractController
throw new IllegalArgumentException("Unknown type " + type);
}
}
+
+ /**
+ * Extracting given query_paramater value from the predicate(parsed http body)
+ * @param queryParameterId
+ * @param predicate
+ * @return
+ */
+ protected static Object getQueryParameterValue(String queryParameterId, Predicate predicate) {
+
+ if (predicate instanceof ArrayPredicate) {
+ ArrayPredicate arrayPredicate = (ArrayPredicate) predicate;
+ for (Predicate predicateItem : arrayPredicate.getPredicates()) {
+ if (predicateItem instanceof ComparisonPredicate) {
+ EqualsPredicate equalsPredicate =
+ (EqualsPredicate) predicateItem;
+ if (queryParameterId.equals(equalsPredicate.getPropertyId())) {
+ return equalsPredicate.getValue();
+ }
+ }
+ }
+
+ }
+ return null;
+ }
}
Modified: incubator/ambari/trunk/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ComponentResourceProvider.java
URL: http://svn.apache.org/viewvc/incubator/ambari/trunk/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ComponentResourceProvider.java?rev=1459976&r1=1459975&r2=1459976&view=diff
==============================================================================
--- incubator/ambari/trunk/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ComponentResourceProvider.java (original)
+++ incubator/ambari/trunk/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ComponentResourceProvider.java Fri Mar 22 20:42:13 2013
@@ -46,6 +46,9 @@ class ComponentResourceProvider extends
protected static final String COMPONENT_STATE_PROPERTY_ID = PropertyHelper.getPropertyId("ServiceComponentInfo", "state");
protected static final String COMPONENT_DESIRED_CONFIGS_PROPERTY_ID = PropertyHelper.getPropertyId("ServiceComponentInfo", "desired_configs");
+ //Parameters from the predicate
+ private static final String QUERY_PARAMETERS_RUN_SMOKE_TEST_ID =
+ "params/run_smoke_test";
private static Set<String> pkPropertyIds =
new HashSet<String>(Arrays.asList(new String[]{
@@ -151,10 +154,13 @@ class ComponentResourceProvider extends
requests.add(compRequest);
}
+ final boolean runSmokeTest = "true".equals(getQueryParameterValue(
+ QUERY_PARAMETERS_RUN_SMOKE_TEST_ID, predicate)) ? true : false;
+
RequestStatusResponse response = modifyResources(new Command<RequestStatusResponse>() {
@Override
public RequestStatusResponse invoke() throws AmbariException {
- return getManagementController().updateComponents(requests, request.getRequestInfoProperties());
+ return getManagementController().updateComponents(requests, request.getRequestInfoProperties(), runSmokeTest);
}
});
Modified: incubator/ambari/trunk/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/HostComponentResourceProvider.java
URL: http://svn.apache.org/viewvc/incubator/ambari/trunk/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/HostComponentResourceProvider.java?rev=1459976&r1=1459975&r2=1459976&view=diff
==============================================================================
--- incubator/ambari/trunk/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/HostComponentResourceProvider.java (original)
+++ incubator/ambari/trunk/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/HostComponentResourceProvider.java Fri Mar 22 20:42:13 2013
@@ -63,6 +63,10 @@ class HostComponentResourceProvider exte
protected static final String HOST_COMPONENT_DESIRED_STACK_ID_PROPERTY_ID
= PropertyHelper.getPropertyId("HostRoles", "desired_stack_id");
+ //Parameters from the predicate
+ private static final String QUERY_PARAMETERS_RUN_SMOKE_TEST_ID =
+ "params/run_smoke_test";
+
private static Set<String> pkPropertyIds =
new HashSet<String>(Arrays.asList(new String[]{
HOST_COMPONENT_CLUSTER_NAME_PROPERTY_ID,
@@ -165,6 +169,9 @@ class HostComponentResourceProvider exte
final Set<ServiceComponentHostRequest> requests = new HashSet<ServiceComponentHostRequest>();
RequestStatusResponse response = null;
+ final boolean runSmokeTest = "true".equals(getQueryParameterValue(
+ QUERY_PARAMETERS_RUN_SMOKE_TEST_ID, predicate)) ? true : false;
+
Iterator<Map<String,Object>> iterator = request.getProperties().iterator();
if (iterator.hasNext()) {
for (Map<String, Object> propertyMap : getPropertyMaps(request.getProperties().iterator().next(), predicate)) {
@@ -173,7 +180,7 @@ class HostComponentResourceProvider exte
response = modifyResources(new Command<RequestStatusResponse>() {
@Override
public RequestStatusResponse invoke() throws AmbariException {
- return getManagementController().updateHostComponents(requests, request.getRequestInfoProperties());
+ return getManagementController().updateHostComponents(requests, request.getRequestInfoProperties(), runSmokeTest);
}
});
Modified: incubator/ambari/trunk/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ServiceResourceProvider.java
URL: http://svn.apache.org/viewvc/incubator/ambari/trunk/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ServiceResourceProvider.java?rev=1459976&r1=1459975&r2=1459976&view=diff
==============================================================================
--- incubator/ambari/trunk/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ServiceResourceProvider.java (original)
+++ incubator/ambari/trunk/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ServiceResourceProvider.java Fri Mar 22 20:42:13 2013
@@ -45,6 +45,9 @@ class ServiceResourceProvider extends Ab
protected static final String SERVICE_SERVICE_STATE_PROPERTY_ID = PropertyHelper.getPropertyId("ServiceInfo", "state");
protected static final String SERVICE_DESIRED_CONFIGS_PROPERTY_ID = PropertyHelper.getPropertyId("ServiceInfo", "desired_configs");
+ //Parameters from the predicate
+ private static final String QUERY_PARAMETERS_RUN_SMOKE_TEST_ID =
+ "params/run_smoke_test";
private static Set<String> pkPropertyIds =
new HashSet<String>(Arrays.asList(new String[]{
@@ -138,10 +141,14 @@ class ServiceResourceProvider extends Ab
for (Map<String, Object> propertyMap : getPropertyMaps(iterator.next(), predicate)) {
requests.add(getRequest(propertyMap));
}
+
+ final boolean runSmokeTest = "true".equals(getQueryParameterValue(
+ QUERY_PARAMETERS_RUN_SMOKE_TEST_ID, predicate)) ? true : false;
+
response = modifyResources(new Command<RequestStatusResponse>() {
@Override
public RequestStatusResponse invoke() throws AmbariException {
- return getManagementController().updateServices(requests, request.getRequestInfoProperties());
+ return getManagementController().updateServices(requests, request.getRequestInfoProperties(), runSmokeTest);
}
});
}
Modified: incubator/ambari/trunk/ambari-server/src/main/resources/properties.json
URL: http://svn.apache.org/viewvc/incubator/ambari/trunk/ambari-server/src/main/resources/properties.json?rev=1459976&r1=1459975&r2=1459976&view=diff
==============================================================================
--- incubator/ambari/trunk/ambari-server/src/main/resources/properties.json (original)
+++ incubator/ambari/trunk/ambari-server/src/main/resources/properties.json Fri Mar 22 20:42:13 2013
@@ -16,6 +16,7 @@
"Services/display_name",
"Services/attributes",
"ServiceInfo/desired_configs",
+ "params/run_smoke_test",
"_"
],
"Host":[
@@ -47,6 +48,7 @@
"ServiceComponents/display_name",
"ServiceComponents/description",
"ServiceComponentInfo/desired_configs",
+ "params/run_smoke_test",
"_"
],
"HostComponent":[
@@ -60,6 +62,7 @@
"HostRoles/desired_configs",
"HostRoles/stack_id",
"HostRoles/desired_stack_id",
+ "params/run_smoke_test",
"_"
],
"Configuration":[
Modified: incubator/ambari/trunk/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerImplTest.java
URL: http://svn.apache.org/viewvc/incubator/ambari/trunk/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerImplTest.java?rev=1459976&r1=1459975&r2=1459976&view=diff
==============================================================================
--- incubator/ambari/trunk/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerImplTest.java (original)
+++ incubator/ambari/trunk/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerImplTest.java Fri Mar 22 20:42:13 2013
@@ -23,13 +23,7 @@ import com.google.gson.reflect.TypeToken
import com.google.inject.AbstractModule;
import com.google.inject.Guice;
import com.google.inject.Injector;
-import org.apache.ambari.server.AmbariException;
-import org.apache.ambari.server.ClusterNotFoundException;
-import org.apache.ambari.server.HostNotFoundException;
-import org.apache.ambari.server.ParentObjectNotFoundException;
-import org.apache.ambari.server.ServiceComponentHostNotFoundException;
-import org.apache.ambari.server.ServiceComponentNotFoundException;
-import org.apache.ambari.server.ServiceNotFoundException;
+import org.apache.ambari.server.*;
import org.apache.ambari.server.api.services.AmbariMetaInfo;
import org.apache.ambari.server.configuration.Configuration;
import org.apache.ambari.server.orm.GuiceJpaInitializer;
@@ -1551,7 +1545,7 @@ public class AmbariManagementControllerI
// gson.<Map<String, String>>fromJson("{\"nagios-global\": \"version2\" }", confType)
// , null));
- amc.updateServices(serviceRequests, mapRequestProps);
+ amc.updateServices(serviceRequests, mapRequestProps, true);
Set<ServiceComponentRequest> serviceComponentRequests = new HashSet<ServiceComponentRequest>();
@@ -1581,7 +1575,7 @@ public class AmbariManagementControllerI
serviceRequests.clear();
serviceRequests.add(new ServiceRequest("c1", "HDFS", null, "INSTALLED"));
- amc.updateServices(serviceRequests, mapRequestProps);
+ amc.updateServices(serviceRequests, mapRequestProps, true);
Cluster cluster = clusters.getCluster("c1");
Map<String, ServiceComponentHost> namenodes = cluster.getService("HDFS").getServiceComponent("NAMENODE").getServiceComponentHosts();
@@ -1611,21 +1605,21 @@ public class AmbariManagementControllerI
componentHostRequests.clear();
componentHostRequests.add(new ServiceComponentHostRequest("c1", null, "NAMENODE", "host1", null, "MAINTENANCE"));
- amc.updateHostComponents(componentHostRequests, mapRequestProps);
+ amc.updateHostComponents(componentHostRequests, mapRequestProps, true);
assertEquals(State.MAINTENANCE, componentHost.getState());
componentHostRequests.clear();
componentHostRequests.add(new ServiceComponentHostRequest("c1", null, "NAMENODE", "host1", null, "INSTALLED"));
- amc.updateHostComponents(componentHostRequests, mapRequestProps);
+ amc.updateHostComponents(componentHostRequests, mapRequestProps, true);
assertEquals(State.INSTALLED, componentHost.getState());
componentHostRequests.clear();
componentHostRequests.add(new ServiceComponentHostRequest("c1", null, "NAMENODE", "host1", null, "MAINTENANCE"));
- amc.updateHostComponents(componentHostRequests, mapRequestProps);
+ amc.updateHostComponents(componentHostRequests, mapRequestProps, true);
assertEquals(State.MAINTENANCE, componentHost.getState());
@@ -1637,7 +1631,7 @@ public class AmbariManagementControllerI
componentHostRequests.clear();
componentHostRequests.add(new ServiceComponentHostRequest("c1", null, "NAMENODE", "host2", null, "INSTALLED"));
- amc.updateHostComponents(componentHostRequests, mapRequestProps);
+ amc.updateHostComponents(componentHostRequests, mapRequestProps, true);
namenodes = cluster.getService("HDFS").getServiceComponent("NAMENODE").getServiceComponentHosts();
assertEquals(2, namenodes.size());
@@ -1649,7 +1643,7 @@ public class AmbariManagementControllerI
serviceRequests.clear();
serviceRequests.add(new ServiceRequest("c1", "HDFS", null, "STARTED"));
- RequestStatusResponse response = amc.updateServices(serviceRequests, mapRequestProps);
+ RequestStatusResponse response = amc.updateServices(serviceRequests, mapRequestProps, true);
for (ShortTaskStatus shortTaskStatus : response.getTasks()) {
assertFalse("host1".equals(shortTaskStatus.getHostName()) && "NAMENODE".equals(shortTaskStatus.getRole()));
}
@@ -1663,6 +1657,48 @@ public class AmbariManagementControllerI
assertEquals(1, namenodes.size());
+
+ //Stopping HDFS service
+ serviceRequests.clear();
+ serviceRequests.add(new ServiceRequest("c1", "HDFS", null, "INSTALLED"));
+ response = amc.updateServices(serviceRequests, mapRequestProps, false);
+
+ //Starting HDFS service. No run_smoke_test flag is set, smoke
+ // test(HDFS_SERVICE_CHECK) won't run
+ boolean runSmokeTest = false;
+ serviceRequests.clear();
+ serviceRequests.add(new ServiceRequest("c1", "HDFS", null, "STARTED"));
+ response = amc.updateServices(serviceRequests, mapRequestProps, runSmokeTest);
+
+ List<ShortTaskStatus> taskStatuses = response.getTasks();
+ boolean smokeTestRequired = false;
+ for (ShortTaskStatus shortTaskStatus : taskStatuses) {
+ if (shortTaskStatus.getRole().equals(Role.HDFS_SERVICE_CHECK.toString())) {
+ smokeTestRequired= true;
+ }
+ }
+ assertFalse(smokeTestRequired);
+
+ //Stopping HDFS service
+ serviceRequests.clear();
+ serviceRequests.add(new ServiceRequest("c1", "HDFS", null, "INSTALLED"));
+ response = amc.updateServices(serviceRequests, mapRequestProps, false);
+
+ //Starting HDFS service again.
+ //run_smoke_test flag is set, smoke test will be run
+ runSmokeTest = true;
+ serviceRequests.clear();
+ serviceRequests.add(new ServiceRequest("c1", "HDFS", null, "STARTED"));
+ response = amc.updateServices(serviceRequests, mapRequestProps, runSmokeTest);
+
+ taskStatuses = response.getTasks();
+ smokeTestRequired = false;
+ for (ShortTaskStatus shortTaskStatus : taskStatuses) {
+ if (shortTaskStatus.getRole().equals(Role.HDFS_SERVICE_CHECK.toString())) {
+ smokeTestRequired= true;
+ }
+ }
+ assertTrue(smokeTestRequired);
}
//todo other resources
Modified: incubator/ambari/trunk/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerTest.java
URL: http://svn.apache.org/viewvc/incubator/ambari/trunk/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerTest.java?rev=1459976&r1=1459975&r2=1459976&view=diff
==============================================================================
--- incubator/ambari/trunk/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerTest.java (original)
+++ incubator/ambari/trunk/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerTest.java Fri Mar 22 20:42:13 2013
@@ -1327,7 +1327,7 @@ public class AmbariManagementControllerT
requests.add(r);
RequestStatusResponse trackAction =
- controller.updateServices(requests, mapRequestProps);
+ controller.updateServices(requests, mapRequestProps, true);
Assert.assertEquals(State.INSTALLED,
clusters.getCluster(clusterName).getService(serviceName)
.getDesiredState());
@@ -1450,7 +1450,7 @@ public class AmbariManagementControllerT
State.STARTED.toString());
requests.clear();
requests.add(r);
- trackAction = controller.updateServices(requests, mapRequestProps);
+ trackAction = controller.updateServices(requests, mapRequestProps, true);
Assert.assertEquals(State.STARTED,
clusters.getCluster(clusterName).getService(serviceName)
@@ -1526,7 +1526,7 @@ public class AmbariManagementControllerT
State.INSTALLED.toString());
requests.clear();
requests.add(r);
- trackAction = controller.updateServices(requests, mapRequestProps);
+ trackAction = controller.updateServices(requests, mapRequestProps, true);
Assert.assertEquals(State.INSTALLED,
clusters.getCluster(clusterName).getService(serviceName)
@@ -2200,7 +2200,7 @@ public class AmbariManagementControllerT
null, State.INSTALLING.toString());
reqs.clear();
reqs.add(r);
- controller.updateServices(reqs, mapRequestProps);
+ controller.updateServices(reqs, mapRequestProps, true);
fail("Expected fail for invalid state transition");
} catch (Exception e) {
// Expected
@@ -2210,7 +2210,8 @@ public class AmbariManagementControllerT
null, State.INSTALLED.toString());
reqs.clear();
reqs.add(r);
- RequestStatusResponse trackAction = controller.updateServices(reqs, mapRequestProps);
+ RequestStatusResponse trackAction = controller.updateServices(reqs,
+ mapRequestProps, true);
Assert.assertNull(trackAction);
}
@@ -2256,7 +2257,7 @@ public class AmbariManagementControllerT
State.INSTALLED.toString());
reqs.add(req1);
reqs.add(req2);
- controller.updateServices(reqs, mapRequestProps);
+ controller.updateServices(reqs, mapRequestProps, true);
fail("Expected failure for multi cluster update");
} catch (Exception e) {
// Expected
@@ -2270,7 +2271,7 @@ public class AmbariManagementControllerT
State.INSTALLED.toString());
reqs.add(req1);
reqs.add(req2);
- controller.updateServices(reqs, mapRequestProps);
+ controller.updateServices(reqs, mapRequestProps, true);
fail("Expected failure for dups services");
} catch (Exception e) {
// Expected
@@ -2287,7 +2288,7 @@ public class AmbariManagementControllerT
State.STARTED.toString());
reqs.add(req1);
reqs.add(req2);
- controller.updateServices(reqs, mapRequestProps);
+ controller.updateServices(reqs, mapRequestProps, true);
fail("Expected failure for different states");
} catch (Exception e) {
// Expected
@@ -2406,7 +2407,7 @@ public class AmbariManagementControllerT
req1 = new ServiceRequest(clusterName, serviceName1, null,
State.STARTED.toString());
reqs.add(req1);
- controller.updateServices(reqs, mapRequestProps);
+ controller.updateServices(reqs, mapRequestProps, true);
fail("Expected failure for invalid state update");
} catch (Exception e) {
// Expected
@@ -2433,7 +2434,7 @@ public class AmbariManagementControllerT
req1 = new ServiceRequest(clusterName, serviceName1, null,
State.STARTED.toString());
reqs.add(req1);
- controller.updateServices(reqs, mapRequestProps);
+ controller.updateServices(reqs, mapRequestProps, true);
fail("Expected failure for invalid state update");
} catch (Exception e) {
// Expected
@@ -2462,7 +2463,7 @@ public class AmbariManagementControllerT
State.STARTED.toString());
reqs.add(req1);
reqs.add(req2);
- RequestStatusResponse trackAction = controller.updateServices(reqs, mapRequestProps);
+ RequestStatusResponse trackAction = controller.updateServices(reqs, mapRequestProps, true);
Assert.assertEquals(State.STARTED, s1.getDesiredState());
Assert.assertEquals(State.STARTED, s2.getDesiredState());
@@ -2532,7 +2533,7 @@ public class AmbariManagementControllerT
State.STARTED.toString());
reqs.add(req1);
reqs.add(req2);
- trackAction = controller.updateServices(reqs, mapRequestProps);
+ trackAction = controller.updateServices(reqs, mapRequestProps, true);
Assert.assertNull(trackAction);
}
@@ -2622,7 +2623,7 @@ public class AmbariManagementControllerT
req1 = new ServiceComponentRequest(clusterName, serviceName1,
sc1.getName(), null, State.INIT.toString());
reqs.add(req1);
- controller.updateComponents(reqs, Collections.<String, String>emptyMap());
+ controller.updateComponents(reqs, Collections.<String, String>emptyMap(), true);
fail("Expected failure for invalid state update");
} catch (Exception e) {
// Expected
@@ -2648,7 +2649,7 @@ public class AmbariManagementControllerT
req1 = new ServiceComponentRequest(clusterName, serviceName1,
sc1.getName(), null, State.STARTED.toString());
reqs.add(req1);
- controller.updateComponents(reqs, Collections.<String, String>emptyMap());
+ controller.updateComponents(reqs, Collections.<String, String>emptyMap(), true);
fail("Expected failure for invalid state update");
} catch (Exception e) {
// Expected
@@ -2679,7 +2680,7 @@ public class AmbariManagementControllerT
reqs.add(req1);
reqs.add(req2);
reqs.add(req3);
- RequestStatusResponse trackAction = controller.updateComponents(reqs, Collections.<String, String>emptyMap());
+ RequestStatusResponse trackAction = controller.updateComponents(reqs, Collections.<String, String>emptyMap(), true);
Assert.assertEquals(State.INSTALLED, s1.getDesiredState());
Assert.assertEquals(State.INSTALLED, sc1.getDesiredState());
@@ -2723,7 +2724,7 @@ public class AmbariManagementControllerT
sc2.getName(), null, State.INSTALLED.toString());
reqs.add(req1);
reqs.add(req2);
- trackAction = controller.updateComponents(reqs, Collections.<String, String>emptyMap());
+ trackAction = controller.updateComponents(reqs, Collections.<String, String>emptyMap(), true);
Assert.assertNull(trackAction);
}
@@ -2814,7 +2815,7 @@ public class AmbariManagementControllerT
componentName1, host1,
null, State.STARTED.toString());
reqs.add(req1);
- controller.updateHostComponents(reqs, Collections.<String, String>emptyMap());
+ controller.updateHostComponents(reqs, Collections.<String, String>emptyMap(), true);
fail("Expected failure for invalid transition");
} catch (Exception e) {
// Expected
@@ -2842,7 +2843,7 @@ public class AmbariManagementControllerT
reqs.add(req3);
reqs.add(req4);
reqs.add(req5);
- controller.updateHostComponents(reqs, Collections.<String, String>emptyMap());
+ controller.updateHostComponents(reqs, Collections.<String, String>emptyMap(), true);
fail("Expected failure for invalid states");
} catch (Exception e) {
// Expected
@@ -2869,7 +2870,8 @@ public class AmbariManagementControllerT
reqs.add(req3);
reqs.add(req4);
reqs.add(req5);
- RequestStatusResponse trackAction = controller.updateHostComponents(reqs, Collections.<String, String>emptyMap());
+ RequestStatusResponse trackAction = controller.updateHostComponents(reqs,
+ Collections.<String, String>emptyMap(), true);
Assert.assertNotNull(trackAction);
long requestId = trackAction.getRequestId();
@@ -2901,7 +2903,8 @@ public class AmbariManagementControllerT
null, State.INSTALLED.toString());
reqs.add(req1);
reqs.add(req2);
- trackAction = controller.updateHostComponents(reqs, Collections.<String, String>emptyMap());
+ trackAction = controller.updateHostComponents(reqs, Collections.<String,
+ String>emptyMap(), true);
Assert.assertNull(trackAction);
}
@@ -2991,7 +2994,7 @@ public class AmbariManagementControllerT
Map<String,String> mapRequestProps = new HashMap<String, String>();
mapRequestProps.put("context", "testServiceComponentHostUpdateStackId");
- RequestStatusResponse resp = controller.updateHostComponents(reqs, mapRequestProps);
+ RequestStatusResponse resp = controller.updateHostComponents(reqs, mapRequestProps, true);
List<Stage> stages = actionDB.getAllStages(resp.getRequestId());
Assert.assertEquals(1, stages.size());
Assert.assertEquals(2, stages.get(0).getOrderedHostRoleCommands().size());
@@ -3036,7 +3039,7 @@ public class AmbariManagementControllerT
req3.setDesiredStackId("HDP-0.2");
reqs.add(req3);
- resp = controller.updateHostComponents(reqs, Collections.<String, String>emptyMap());
+ resp = controller.updateHostComponents(reqs, Collections.<String, String>emptyMap(), true);
stages = actionDB.getAllStages(resp.getRequestId());
Assert.assertEquals(2, stages.size());
Assert.assertEquals(2, stages.get(0).getOrderedHostRoleCommands().size());
@@ -3211,7 +3214,8 @@ public class AmbariManagementControllerT
req1.setDesiredStackId("HDP-0.2");
reqs.add(req1);
- RequestStatusResponse resp = controller.updateHostComponents(reqs, Collections.<String,String>emptyMap());
+ RequestStatusResponse resp = controller.updateHostComponents(reqs,
+ Collections.<String,String>emptyMap(), true);
Assert.assertNull(resp);
c1.setCurrentStackVersion(new StackId("HDP-0.2"));
@@ -3223,14 +3227,14 @@ public class AmbariManagementControllerT
null, State.INSTALLED.toString());
req1.setDesiredStackId("HDP-0.2");
reqs.add(req1);
- resp = controller.updateHostComponents(reqs, Collections.<String,String>emptyMap());
+ resp = controller.updateHostComponents(reqs, Collections.<String,String>emptyMap(), true);
Assert.assertNull(resp);
}
private void updateHostAndCompareExpectedFailure(Set<ServiceComponentHostRequest> reqs,
String expectedMessage) {
try {
- controller.updateHostComponents(reqs, Collections.<String,String>emptyMap());
+ controller.updateHostComponents(reqs, Collections.<String,String>emptyMap(), true);
fail("Expected failure: " + expectedMessage);
} catch (Exception e) {
LOG.info("Actual exception message: " + e.getMessage());
@@ -3534,7 +3538,7 @@ public class AmbariManagementControllerT
sReqs.clear();
sReqs.add(new ServiceRequest(clusterName, serviceName, configVersions,
"INSTALLED"));
- RequestStatusResponse trackAction = controller.updateServices(sReqs, mapRequestProps);
+ RequestStatusResponse trackAction = controller.updateServices(sReqs, mapRequestProps, true);
List<Stage> stages = actionDB.getAllStages(trackAction.getRequestId());
for (ExecutionCommandWrapper cmd : stages.get(0)
.getExecutionCommands(host1)) {
@@ -3626,7 +3630,7 @@ public class AmbariManagementControllerT
Set<ServiceRequest> requests = new HashSet<ServiceRequest>();
requests.add(r);
- controller.updateServices(requests, mapRequestProps);
+ controller.updateServices(requests, mapRequestProps, true);
Assert.assertEquals(State.INSTALLED,
clusters.getCluster(clusterName).getService(serviceName)
.getDesiredState());
@@ -3645,7 +3649,7 @@ public class AmbariManagementControllerT
State.STARTED.toString());
requests.clear();
requests.add(r);
- controller.updateServices(requests, mapRequestProps);
+ controller.updateServices(requests, mapRequestProps, true);
// manually change live state to started as no running action manager
for (ServiceComponent sc :
@@ -3718,7 +3722,7 @@ public class AmbariManagementControllerT
schReqs.clear();
schReqs.add(new ServiceComponentHostRequest(clusterName, serviceName,
componentName1, host1, configVersions, null));
- Assert.assertNull(controller.updateHostComponents(schReqs, Collections.<String, String>emptyMap()));
+ Assert.assertNull(controller.updateHostComponents(schReqs, Collections.<String, String>emptyMap(), true));
Assert.assertEquals(0, s.getDesiredConfigs().size());
Assert.assertEquals(0, sc1.getDesiredConfigs().size());
@@ -3730,7 +3734,7 @@ public class AmbariManagementControllerT
scReqs.clear();
scReqs.add(new ServiceComponentRequest(clusterName, serviceName,
componentName2, configVersions, null));
- Assert.assertNull(controller.updateComponents(scReqs, Collections.<String, String>emptyMap()));
+ Assert.assertNull(controller.updateComponents(scReqs, Collections.<String, String>emptyMap(), true));
Assert.assertEquals(0, s.getDesiredConfigs().size());
Assert.assertEquals(0, sc1.getDesiredConfigs().size());
@@ -3745,7 +3749,7 @@ public class AmbariManagementControllerT
sReqs.clear();
sReqs.add(new ServiceRequest(clusterName, serviceName, configVersions,
null));
- Assert.assertNull(controller.updateServices(sReqs, mapRequestProps));
+ Assert.assertNull(controller.updateServices(sReqs, mapRequestProps, true));
Assert.assertEquals(3, s.getDesiredConfigs().size());
Assert.assertEquals(3, sc1.getDesiredConfigs().size());
@@ -3792,7 +3796,7 @@ public class AmbariManagementControllerT
schReqs.clear();
schReqs.add(new ServiceComponentHostRequest(clusterName, serviceName,
componentName1, host1, configVersions, null));
- Assert.assertNull(controller.updateHostComponents(schReqs, Collections.<String, String>emptyMap()));
+ Assert.assertNull(controller.updateHostComponents(schReqs, Collections.<String, String>emptyMap(), true));
Assert.assertEquals(3, s.getDesiredConfigs().size());
Assert.assertEquals(3, sc1.getDesiredConfigs().size());
@@ -3815,7 +3819,7 @@ public class AmbariManagementControllerT
scReqs.clear();
scReqs.add(new ServiceComponentRequest(clusterName, serviceName,
componentName1, configVersions, null));
- Assert.assertNull(controller.updateComponents(scReqs, Collections.<String, String>emptyMap()));
+ Assert.assertNull(controller.updateComponents(scReqs, Collections.<String, String>emptyMap(), true));
Assert.assertEquals(3, s.getDesiredConfigs().size());
Assert.assertEquals(4, sc1.getDesiredConfigs().size());
@@ -3953,7 +3957,7 @@ public class AmbariManagementControllerT
schReqs.clear();
schReqs.add(new ServiceComponentHostRequest(clusterName, serviceName,
componentName1, host1, configVersions, null));
- Assert.assertNull(controller.updateHostComponents(schReqs, Collections.<String, String>emptyMap()));
+ Assert.assertNull(controller.updateHostComponents(schReqs, Collections.<String, String>emptyMap(), true));
Assert.assertEquals(0, s.getDesiredConfigs().size());
Assert.assertEquals(0, sc1.getDesiredConfigs().size());
@@ -3965,7 +3969,7 @@ public class AmbariManagementControllerT
scReqs.clear();
scReqs.add(new ServiceComponentRequest(clusterName, serviceName,
componentName2, configVersions, null));
- Assert.assertNull(controller.updateComponents(scReqs, Collections.<String, String>emptyMap()));
+ Assert.assertNull(controller.updateComponents(scReqs, Collections.<String, String>emptyMap(), true));
Assert.assertEquals(0, s.getDesiredConfigs().size());
Assert.assertEquals(0, sc1.getDesiredConfigs().size());
@@ -3980,7 +3984,7 @@ public class AmbariManagementControllerT
sReqs.clear();
sReqs.add(new ServiceRequest(clusterName, serviceName, configVersions,
null));
- Assert.assertNull(controller.updateServices(sReqs, mapRequestProps));
+ Assert.assertNull(controller.updateServices(sReqs, mapRequestProps, true));
Assert.assertEquals(3, s.getDesiredConfigs().size());
Assert.assertEquals(3, sc1.getDesiredConfigs().size());
@@ -4027,7 +4031,7 @@ public class AmbariManagementControllerT
schReqs.clear();
schReqs.add(new ServiceComponentHostRequest(clusterName, serviceName,
componentName1, host1, configVersions, null));
- Assert.assertNull(controller.updateHostComponents(schReqs, Collections.<String, String>emptyMap()));
+ Assert.assertNull(controller.updateHostComponents(schReqs, Collections.<String, String>emptyMap(), true));
Assert.assertEquals(3, s.getDesiredConfigs().size());
Assert.assertEquals(3, sc1.getDesiredConfigs().size());
@@ -4050,7 +4054,7 @@ public class AmbariManagementControllerT
scReqs.clear();
scReqs.add(new ServiceComponentRequest(clusterName, serviceName,
componentName1, configVersions, null));
- Assert.assertNull(controller.updateComponents(scReqs, Collections.<String, String>emptyMap()));
+ Assert.assertNull(controller.updateComponents(scReqs, Collections.<String, String>emptyMap(), true));
Assert.assertEquals(3, s.getDesiredConfigs().size());
Assert.assertEquals(4, sc1.getDesiredConfigs().size());
@@ -4132,7 +4136,7 @@ public class AmbariManagementControllerT
Set<ServiceRequest> requests = new HashSet<ServiceRequest>();
requests.add(r);
- controller.updateServices(requests, mapRequestProps);
+ controller.updateServices(requests, mapRequestProps, true);
Assert.assertEquals(State.INSTALLED,
clusters.getCluster(clusterName).getService(serviceName)
.getDesiredState());
@@ -4181,7 +4185,7 @@ public class AmbariManagementControllerT
schReqs.clear();
schReqs.add(new ServiceComponentHostRequest(clusterName, serviceName,
componentName1, host1, configVersions, null));
- Assert.assertNull(controller.updateHostComponents(schReqs, Collections.<String, String>emptyMap()));
+ Assert.assertNull(controller.updateHostComponents(schReqs, Collections.<String, String>emptyMap(), true));
Assert.assertEquals(2, sch1.getDesiredConfigs().size());
// Reconfigure SCH level
@@ -4190,7 +4194,7 @@ public class AmbariManagementControllerT
schReqs.clear();
schReqs.add(new ServiceComponentHostRequest(clusterName, serviceName,
componentName1, host1, configVersions, null));
- Assert.assertNull(controller.updateHostComponents(schReqs, Collections.<String, String>emptyMap()));
+ Assert.assertNull(controller.updateHostComponents(schReqs, Collections.<String, String>emptyMap(), true));
// Clear Entity Manager
entityManager.clear();
@@ -4205,11 +4209,11 @@ public class AmbariManagementControllerT
configVersions.put("hdfs-site", "version1");
scReqs.add(new ServiceComponentRequest(clusterName, serviceName,
componentName2, configVersions, null));
- Assert.assertNull(controller.updateComponents(scReqs, Collections.<String, String>emptyMap()));
+ Assert.assertNull(controller.updateComponents(scReqs, Collections.<String, String>emptyMap(), true));
scReqs.add(new ServiceComponentRequest(clusterName, serviceName,
componentName1, configVersions, null));
- Assert.assertNull(controller.updateComponents(scReqs, Collections.<String, String>emptyMap()));
+ Assert.assertNull(controller.updateComponents(scReqs, Collections.<String, String>emptyMap(), true));
Assert.assertEquals(2, sc1.getDesiredConfigs().size());
Assert.assertEquals(2, sc2.getDesiredConfigs().size());
@@ -4220,7 +4224,7 @@ public class AmbariManagementControllerT
scReqs.clear();
scReqs.add(new ServiceComponentRequest(clusterName, serviceName,
componentName2, configVersions, null));
- Assert.assertNull(controller.updateComponents(scReqs, Collections.<String, String>emptyMap()));
+ Assert.assertNull(controller.updateComponents(scReqs, Collections.<String, String>emptyMap(), true));
Assert.assertEquals(2, sc2.getDesiredConfigs().size());
Assert.assertEquals("version122", sc2.getDesiredConfigs().get
@@ -4228,7 +4232,7 @@ public class AmbariManagementControllerT
scReqs.clear();
scReqs.add(new ServiceComponentRequest(clusterName, serviceName,
componentName1, configVersions, null));
- Assert.assertNull(controller.updateComponents(scReqs, Collections.<String, String>emptyMap()));
+ Assert.assertNull(controller.updateComponents(scReqs, Collections.<String, String>emptyMap(), true));
entityManager.clear();
@@ -4243,7 +4247,7 @@ public class AmbariManagementControllerT
sReqs.clear();
sReqs.add(new ServiceRequest(clusterName, serviceName, configVersions,
null));
- Assert.assertNull(controller.updateServices(sReqs, mapRequestProps));
+ Assert.assertNull(controller.updateServices(sReqs, mapRequestProps, true));
Assert.assertEquals(2, s.getDesiredConfigs().size());
// Reconfigure S Level
@@ -4253,7 +4257,7 @@ public class AmbariManagementControllerT
sReqs.clear();
sReqs.add(new ServiceRequest(clusterName, serviceName, configVersions,
null));
- Assert.assertNull(controller.updateServices(sReqs, mapRequestProps));
+ Assert.assertNull(controller.updateServices(sReqs, mapRequestProps, true));
entityManager.clear();
@@ -4301,7 +4305,7 @@ public class AmbariManagementControllerT
requests.add(r);
RequestStatusResponse trackAction =
- controller.updateServices(requests, mapRequestProps);
+ controller.updateServices(requests, mapRequestProps, true);
Assert.assertEquals(State.INSTALLED,
clusters.getCluster(clusterName).getService(serviceName)
.getDesiredState());
@@ -4335,7 +4339,7 @@ public class AmbariManagementControllerT
requests.clear();
requests.add(r);
- trackAction = controller.updateServices(requests, mapRequestProps);
+ trackAction = controller.updateServices(requests, mapRequestProps, true);
Assert.assertNotNull(trackAction);
Assert.assertEquals(State.INSTALLED,
clusters.getCluster(clusterName).getService(serviceName)
@@ -5067,7 +5071,7 @@ public class AmbariManagementControllerT
requests.add(r);
RequestStatusResponse trackAction =
- controller.updateServices(requests, mapRequestProps);
+ controller.updateServices(requests, mapRequestProps, true);
Assert.assertEquals(State.INSTALLED,
clusters.getCluster(clusterName).getService(serviceName)
.getDesiredState());
@@ -5086,7 +5090,7 @@ public class AmbariManagementControllerT
State.STARTED.toString());
requests.clear();
requests.add(r);
- trackAction = controller.updateServices(requests, mapRequestProps);
+ trackAction = controller.updateServices(requests, mapRequestProps, true);
// manually change live state to started as no running action manager
for (ServiceComponent sc :
@@ -5120,7 +5124,7 @@ public class AmbariManagementControllerT
Set<ServiceComponentHostRequest> reqs1 = new
HashSet<ServiceComponentHostRequest>();
reqs1.add(r1);
- controller.updateHostComponents(reqs1, Collections.<String, String>emptyMap());
+ controller.updateHostComponents(reqs1, Collections.<String, String>emptyMap(), true);
Assert.assertEquals(State.INSTALLED, sch.getDesiredState());
}
}
@@ -5131,7 +5135,7 @@ public class AmbariManagementControllerT
State.INSTALLED.toString());
requests.clear();
requests.add(r);
- controller.updateServices(requests, mapRequestProps);
+ controller.updateServices(requests, mapRequestProps, true);
for (ServiceComponent sc :
clusters.getCluster(clusterName).getService(serviceName)
Modified: incubator/ambari/trunk/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/AbstractControllerResourceProviderTest.java
URL: http://svn.apache.org/viewvc/incubator/ambari/trunk/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/AbstractControllerResourceProviderTest.java?rev=1459976&r1=1459975&r2=1459976&view=diff
==============================================================================
--- incubator/ambari/trunk/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/AbstractControllerResourceProviderTest.java (original)
+++ incubator/ambari/trunk/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/AbstractControllerResourceProviderTest.java Fri Mar 22 20:42:13 2013
@@ -20,7 +20,10 @@ package org.apache.ambari.server.control
import junit.framework.Assert;
import org.apache.ambari.server.controller.AmbariManagementController;
+import org.apache.ambari.server.controller.spi.Predicate;
import org.apache.ambari.server.controller.spi.Resource;
+import org.apache.ambari.server.controller.utilities.PredicateBuilder;
+import org.codehaus.jackson.map.ser.PropertyBuilder;
import org.junit.Test;
import java.util.HashMap;
@@ -28,6 +31,7 @@ import java.util.HashSet;
import java.util.Map;
import java.util.Set;
+import static org.easymock.EasyMock.and;
import static org.easymock.EasyMock.createMock;
/**
@@ -58,4 +62,21 @@ public class AbstractControllerResourceP
Assert.assertTrue(provider instanceof ServiceResourceProvider);
}
-}
+
+ @Test
+ public void testGetQueryParameterValue() {
+
+ String queryParameterId1 = "qp/variable1";
+ String queryParameterValue1 = "value1";
+ String queryParameterId2 = "qp/variable2";
+ String queryParameterValue2 = "value2";
+
+ Predicate predicate = new PredicateBuilder().property(queryParameterId1).equals(queryParameterValue1).
+ and().property(queryParameterId2).equals(queryParameterValue2).toPredicate();
+
+ Assert.assertEquals(queryParameterValue1, AbstractControllerResourceProvider.getQueryParameterValue(queryParameterId1, predicate));
+ Assert.assertFalse(queryParameterValue2.equals(AbstractControllerResourceProvider.getQueryParameterValue(queryParameterId1, predicate)));
+ Assert.assertNull(AbstractControllerResourceProvider.getQueryParameterValue("queryParameterIdNotFound", predicate));
+ }
+
+ }
Modified: incubator/ambari/trunk/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ComponentResourceProviderTest.java
URL: http://svn.apache.org/viewvc/incubator/ambari/trunk/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ComponentResourceProviderTest.java?rev=1459976&r1=1459975&r2=1459976&view=diff
==============================================================================
--- incubator/ambari/trunk/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ComponentResourceProviderTest.java (original)
+++ incubator/ambari/trunk/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ComponentResourceProviderTest.java Fri Mar 22 20:42:13 2013
@@ -157,7 +157,7 @@ public class ComponentResourceProviderTe
andReturn(nameResponse).once();
expect(managementController.updateComponents(
AbstractResourceProviderTest.Matcher.getComponentRequestSet(
- "Cluster102", "Service", "Component", null, "STARTED"), eq(mapRequestProps))).andReturn(response).once();
+ "Cluster102", "Service", "Component", null, "STARTED"), eq(mapRequestProps), eq(false))).andReturn(response).once();
// replay
replay(managementController, response);
Modified: incubator/ambari/trunk/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/HostComponentResourceProviderTest.java
URL: http://svn.apache.org/viewvc/incubator/ambari/trunk/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/HostComponentResourceProviderTest.java?rev=1459976&r1=1459975&r2=1459976&view=diff
==============================================================================
--- incubator/ambari/trunk/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/HostComponentResourceProviderTest.java (original)
+++ incubator/ambari/trunk/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/HostComponentResourceProviderTest.java Fri Mar 22 20:42:13 2013
@@ -250,7 +250,7 @@ public class HostComponentResourceProvid
expect(managementController.updateHostComponents(
AbstractResourceProviderTest.Matcher.getHostComponentRequestSet(
"Cluster102", null, "Component100", "Host100", null, "STARTED"),
- eq(mapRequestProps))).andReturn(response).once();
+ eq(mapRequestProps), eq(false))).andReturn(response).once();
// replay
replay(managementController, response);
Modified: incubator/ambari/trunk/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/JMXHostProviderTest.java
URL: http://svn.apache.org/viewvc/incubator/ambari/trunk/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/JMXHostProviderTest.java?rev=1459976&r1=1459975&r2=1459976&view=diff
==============================================================================
--- incubator/ambari/trunk/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/JMXHostProviderTest.java (original)
+++ incubator/ambari/trunk/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/JMXHostProviderTest.java Fri Mar 22 20:42:13 2013
@@ -154,7 +154,7 @@ public class JMXHostProviderTest {
configVersions.put("hdfs-site", "version1");
sReqs.add(new ServiceRequest(clusterName, serviceName, configVersions,
null));
- controller.updateServices(sReqs, mapRequestProps);
+ controller.updateServices(sReqs, mapRequestProps, true);
}
Modified: incubator/ambari/trunk/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ServiceResourceProviderTest.java
URL: http://svn.apache.org/viewvc/incubator/ambari/trunk/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ServiceResourceProviderTest.java?rev=1459976&r1=1459975&r2=1459976&view=diff
==============================================================================
--- incubator/ambari/trunk/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ServiceResourceProviderTest.java (original)
+++ incubator/ambari/trunk/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ServiceResourceProviderTest.java Fri Mar 22 20:42:13 2013
@@ -194,7 +194,7 @@ public class ServiceResourceProviderTest
// set expectations
expect(managementController.updateServices(capture(requestsCapture),
- eq(mapRequestProps))).andReturn(response).once();
+ eq(mapRequestProps), eq(false))).andReturn(response).once();
// replay
replay(managementController, response);