You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by dm...@apache.org on 2019/05/30 17:33:50 UTC
[ambari] branch branch-2.6 updated: AMBARI-25290. backport for 2.6 - Custom timeout ignored, python script has been killed d… (#2994)
This is an automated email from the ASF dual-hosted git repository.
dmitriusan pushed a commit to branch branch-2.6
in repository https://gitbox.apache.org/repos/asf/ambari.git
The following commit(s) were added to refs/heads/branch-2.6 by this push:
new 8ee7c35 AMBARI-25290. backport for 2.6 - Custom timeout ignored, python script has been killed d… (#2994)
8ee7c35 is described below
commit 8ee7c35cc3b08a0970822e0386fbc478b1fff28a
Author: Lisnichenko Dmitro <dl...@hortonworks.com>
AuthorDate: Thu May 30 20:33:43 2019 +0300
AMBARI-25290. backport for 2.6 - Custom timeout ignored, python script has been killed d… (#2994)
* AMBARI-25290. Custom timeout ignored, python script has been killed due to timeout after waiting 2700 secs during HDP upgrade (dlysnichenko)
* AMBARI-25290. Custom timeout ignored, python script has been killed due to timeout after waiting 2700 secs during HDP upgrade - address review comment (dlysnichenko)
---
.../server/controller/ActionExecutionContext.java | 8 ++++----
.../AmbariCustomCommandExecutionHelper.java | 2 +-
.../ClusterStackVersionResourceProvider.java | 2 +-
.../internal/HostStackVersionResourceProvider.java | 2 +-
.../controller/internal/UpgradeResourceProvider.java | 2 +-
.../server/customactions/ActionDefinition.java | 8 ++++----
.../customactions/ActionDefinitionManager.java | 10 +++++-----
.../server/state/stack/upgrade/StageWrapper.java | 8 ++++----
.../controller/AmbariManagementControllerTest.java | 20 ++++++++++----------
.../internal/ActionResourceProviderTest.java | 8 ++++----
10 files changed, 35 insertions(+), 35 deletions(-)
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/controller/ActionExecutionContext.java b/ambari-server/src/main/java/org/apache/ambari/server/controller/ActionExecutionContext.java
index 207dbfb..a3ff165 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/controller/ActionExecutionContext.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/controller/ActionExecutionContext.java
@@ -39,7 +39,7 @@ public class ActionExecutionContext {
private RequestOperationLevel operationLevel;
private Map<String, String> parameters;
private TargetHostType targetType;
- private Short timeout;
+ private Integer timeout;
private String expectedServiceName;
private String expectedComponentName;
private boolean hostsInMaintenanceModeExcluded = true;
@@ -61,7 +61,7 @@ public class ActionExecutionContext {
public ActionExecutionContext(String clusterName, String actionName,
List<RequestResourceFilter> resourceFilters,
Map<String, String> parameters, TargetHostType targetType,
- Short timeout, String expectedServiceName,
+ Integer timeout, String expectedServiceName,
String expectedComponentName) {
this.clusterName = clusterName;
@@ -106,11 +106,11 @@ public class ActionExecutionContext {
return targetType;
}
- public Short getTimeout() {
+ public Integer getTimeout() {
return timeout;
}
- public void setTimeout(Short timeout) {
+ public void setTimeout(Integer timeout) {
this.timeout = timeout;
}
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/controller/AmbariCustomCommandExecutionHelper.java b/ambari-server/src/main/java/org/apache/ambari/server/controller/AmbariCustomCommandExecutionHelper.java
index dc3b08c..2b5be45 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/controller/AmbariCustomCommandExecutionHelper.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/controller/AmbariCustomCommandExecutionHelper.java
@@ -448,7 +448,7 @@ public class AmbariCustomCommandExecutionHelper {
}
boolean isInstallCommand = commandName.equals(RoleCommand.INSTALL.toString());
- int commandTimeout = Short.valueOf(configs.getDefaultAgentTaskTimeout(isInstallCommand)).intValue();
+ int commandTimeout = Integer.valueOf(configs.getDefaultAgentTaskTimeout(isInstallCommand));
ComponentInfo componentInfo = ambariMetaInfo.getComponent(
stackId.getStackName(), stackId.getStackVersion(),
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ClusterStackVersionResourceProvider.java b/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ClusterStackVersionResourceProvider.java
index c21bd39..25cbcc6 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ClusterStackVersionResourceProvider.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ClusterStackVersionResourceProvider.java
@@ -745,7 +745,7 @@ public class ClusterStackVersionResourceProvider extends AbstractControllerResou
roleParams);
actionContext.setRepositoryVersion(repoVersion);
- actionContext.setTimeout(Short.valueOf(configuration.getDefaultAgentTaskTimeout(true)));
+ actionContext.setTimeout(Integer.valueOf(configuration.getDefaultAgentTaskTimeout(true)));
repoVersionHelper.addCommandRepositoryToContext(actionContext, osEntity);
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/HostStackVersionResourceProvider.java b/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/HostStackVersionResourceProvider.java
index 3b22493..e08c74b 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/HostStackVersionResourceProvider.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/HostStackVersionResourceProvider.java
@@ -488,7 +488,7 @@ public class HostStackVersionResourceProvider extends AbstractControllerResource
private ActionExecutionContext createActionExecutionContext(Cluster cluster, RepositoryVersionEntity repoVersionEntity, Map<String, String> roleParams, RequestResourceFilter filter, String action) {
List<RequestResourceFilter> resourceFilters = Collections.singletonList(filter);
ActionExecutionContext actionContext = new ActionExecutionContext(cluster.getClusterName(), action, resourceFilters, roleParams);
- Short timeout = Short.valueOf(configuration.getDefaultAgentTaskTimeout(true));
+ Integer timeout = Integer.valueOf(configuration.getDefaultAgentTaskTimeout(true));
actionContext.setTimeout(timeout);
actionContext.setRepositoryVersion(repoVersionEntity);
return actionContext;
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/UpgradeResourceProvider.java b/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/UpgradeResourceProvider.java
index ed0248c..b706b9a 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/UpgradeResourceProvider.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/UpgradeResourceProvider.java
@@ -1348,7 +1348,7 @@ public class UpgradeResourceProvider extends AbstractControllerResourceProvider
Role.AMBARI_SERVER_ACTION.toString(), Collections.<RequestResourceFilter> emptyList(),
commandParams);
- actionContext.setTimeout(Short.valueOf((short) -1));
+ actionContext.setTimeout(-1);
actionContext.setRetryAllowed(group.allowRetry);
actionContext.setAutoSkipFailures(context.isComponentFailureAutoSkipped());
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/customactions/ActionDefinition.java b/ambari-server/src/main/java/org/apache/ambari/server/customactions/ActionDefinition.java
index 02c469f..e77e1db 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/customactions/ActionDefinition.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/customactions/ActionDefinition.java
@@ -36,7 +36,7 @@ public class ActionDefinition {
private String targetComponent;
private String description;
private TargetHostType targetType;
- private Short defaultTimeout;
+ private Integer defaultTimeout;
private Set<RoleAuthorization> permissions;
/**
@@ -54,7 +54,7 @@ public class ActionDefinition {
*/
public ActionDefinition(String actionName, ActionType actionType, String inputs,
String targetService, String targetComponent, String description,
- TargetHostType targetType, Short defaultTimeout, Set<RoleAuthorization> permissions) {
+ TargetHostType targetType, Integer defaultTimeout, Set<RoleAuthorization> permissions) {
setActionName(actionName);
setActionType(actionType);
setInputs(inputs);
@@ -122,11 +122,11 @@ public class ActionDefinition {
this.targetType = targetType;
}
- public Short getDefaultTimeout() {
+ public Integer getDefaultTimeout() {
return defaultTimeout;
}
- public void setDefaultTimeout(Short defaultTimeout) {
+ public void setDefaultTimeout(Integer defaultTimeout) {
this.defaultTimeout = defaultTimeout;
}
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/customactions/ActionDefinitionManager.java b/ambari-server/src/main/java/org/apache/ambari/server/customactions/ActionDefinitionManager.java
index efb950c..eac8551 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/customactions/ActionDefinitionManager.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/customactions/ActionDefinitionManager.java
@@ -43,12 +43,12 @@ import java.util.Set;
* Manages Action definitions read from XML files
*/
public class ActionDefinitionManager {
- public static final Short MIN_TIMEOUT = 60;
+ public static final Integer MIN_TIMEOUT = 60;
private final static Logger LOG = LoggerFactory
.getLogger(ActionDefinitionManager.class);
private static final Map<Class<?>, JAXBContext> _jaxbContexts =
new HashMap<Class<?>, JAXBContext>();
- private static final Short MAX_TIMEOUT = Short.MAX_VALUE-1;
+ private static final Integer MAX_TIMEOUT = Integer.MAX_VALUE-1;
static {
try {
@@ -111,9 +111,9 @@ public class ActionDefinitionManager {
TargetHostType targetType = safeValueOf(TargetHostType.class, ad.getTargetType(), errorReason);
ActionType actionType = safeValueOf(ActionType.class, ad.getActionType(), errorReason);
- Short defaultTimeout = MIN_TIMEOUT;
+ Integer defaultTimeout = MIN_TIMEOUT;
if (ad.getDefaultTimeout() != null && !ad.getDefaultTimeout().isEmpty()) {
- defaultTimeout = Short.parseShort(ad.getDefaultTimeout());
+ defaultTimeout = Integer.parseInt(ad.getDefaultTimeout());
}
if (isValidActionDefinition(ad, actionType, defaultTimeout, errorReason)) {
@@ -137,7 +137,7 @@ public class ActionDefinitionManager {
}
private boolean isValidActionDefinition(ActionDefinitionSpec ad, ActionType actionType,
- Short defaultTimeout, StringBuilder reason) {
+ Integer defaultTimeout, StringBuilder reason) {
if (isValidActionName(ad.getActionName(), reason)) {
if (defaultTimeout < MIN_TIMEOUT || defaultTimeout > MAX_TIMEOUT) {
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/state/stack/upgrade/StageWrapper.java b/ambari-server/src/main/java/org/apache/ambari/server/state/stack/upgrade/StageWrapper.java
index 70589ec..123dbe0 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/state/stack/upgrade/StageWrapper.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/state/stack/upgrade/StageWrapper.java
@@ -190,7 +190,7 @@ public class StageWrapper {
* this in.
* @return the maximum timeout, or the default agent execution timeout if none are found. Never {@code null}.
*/
- public Short getMaxTimeout(Configuration configuration) {
+ public Integer getMaxTimeout(Configuration configuration) {
Set<String> timeoutKeys = new HashSet<>();
@@ -199,20 +199,20 @@ public class StageWrapper {
timeoutKeys.addAll(wrapper.getTimeoutKeys());
}
- Short defaultTimeout = Short.valueOf(configuration.getDefaultAgentTaskTimeout(false));
+ Integer defaultTimeout = Integer.valueOf(configuration.getDefaultAgentTaskTimeout(false));
if (CollectionUtils.isEmpty(timeoutKeys)) {
return defaultTimeout;
}
- Short timeout = null;
+ Integer timeout = null;
for (String key : timeoutKeys) {
String configValue = configuration.getProperty(key);
if (StringUtils.isNotBlank(configValue)) {
try {
- Short configTimeout = Short.valueOf(configValue);
+ Integer configTimeout = Integer.valueOf(configValue);
if (null == timeout || configTimeout > timeout) {
timeout = configTimeout;
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerTest.java b/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerTest.java
index ab7d1ec..3c9c131 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerTest.java
@@ -3939,11 +3939,11 @@ public class AmbariManagementControllerTest {
ActionDefinition a1 = new ActionDefinition(actionDef1, ActionType.SYSTEM,
- "test,[optional1]", "", "", "Does file exist", TargetHostType.SPECIFIC, Short.valueOf("100"), null);
+ "test,[optional1]", "", "", "Does file exist", TargetHostType.SPECIFIC, Integer.valueOf("100"), null);
controller.getAmbariMetaInfo().addActionDefinition(a1);
controller.getAmbariMetaInfo().addActionDefinition(new ActionDefinition(
actionDef2, ActionType.SYSTEM, "", "HDFS", "DATANODE", "Does file exist",
- TargetHostType.ALL, Short.valueOf("1000"), null));
+ TargetHostType.ALL, Integer.valueOf("1000"), null));
Map<String, String> params = new HashMap<String, String>() {{
put("test", "test");
@@ -3996,7 +3996,7 @@ public class AmbariManagementControllerTest {
Assert.assertEquals(requestProperties.get(REQUEST_CONTEXT_PROPERTY), response.getRequestContext());
// !!! test that the action execution helper is using the right timeout
- a1.setDefaultTimeout((short) 1800);
+ a1.setDefaultTimeout(1800);
actionRequest = new ExecuteActionRequest(cluster1, null, actionDef1, resourceFilters, null, params, false);
response = controller.createAction(actionRequest, requestProperties);
@@ -4316,23 +4316,23 @@ public class AmbariManagementControllerTest {
controller.getAmbariMetaInfo().addActionDefinition(new ActionDefinition(
actionDef1, ActionType.SYSTEM, "test,dirName", "", "", "Does file exist",
- TargetHostType.SPECIFIC, Short.valueOf("100"), null));
+ TargetHostType.SPECIFIC, Integer.valueOf("100"), null));
controller.getAmbariMetaInfo().addActionDefinition(new ActionDefinition(
actionDef2, ActionType.SYSTEM, "", "HDFS", "DATANODE", "Does file exist",
- TargetHostType.ANY, Short.valueOf("100"), null));
+ TargetHostType.ANY, Integer.valueOf("100"), null));
controller.getAmbariMetaInfo().addActionDefinition(new ActionDefinition(
"update_repo", ActionType.SYSTEM, "", "HDFS", "DATANODE", "Does file exist",
- TargetHostType.ANY, Short.valueOf("100"), null));
+ TargetHostType.ANY, Integer.valueOf("100"), null));
controller.getAmbariMetaInfo().addActionDefinition(new ActionDefinition(
actionDef3, ActionType.SYSTEM, "", "MAPREDUCE", "MAPREDUCE_CLIENT", "Does file exist",
- TargetHostType.ANY, Short.valueOf("100"), null));
+ TargetHostType.ANY, Integer.valueOf("100"), null));
controller.getAmbariMetaInfo().addActionDefinition(new ActionDefinition(
actionDef4, ActionType.SYSTEM, "", "HIVE", "", "Does file exist",
- TargetHostType.ANY, Short.valueOf("100"), null));
+ TargetHostType.ANY, Integer.valueOf("100"), null));
actionRequest = new ExecuteActionRequest(cluster1, null, actionDef1, null, null, null, false);
expectActionCreationErrorWithMessage(actionRequest, requestProperties,
@@ -6144,7 +6144,7 @@ public class AmbariManagementControllerTest {
controller.getAmbariMetaInfo().addActionDefinition(new ActionDefinition(
action1, ActionType.SYSTEM, "", "HDFS", "", "Some custom action.",
- TargetHostType.ALL, Short.valueOf("10010"), null));
+ TargetHostType.ALL, Integer.valueOf("10010"), null));
Map<String, String> params = new HashMap<String, String>() {{
put("test", "test");
@@ -9931,7 +9931,7 @@ public class AmbariManagementControllerTest {
ambariMetaInfo.addActionDefinition(new ActionDefinition(action1, ActionType.SYSTEM,
"", "", "", "action def description", TargetHostType.ANY,
- Short.valueOf("60"), null));
+ Integer.valueOf("60"), null));
Map<String, String> requestProperties = new HashMap<>();
requestProperties.put(REQUEST_CONTEXT_PROPERTY, "Called from a test");
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ActionResourceProviderTest.java b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ActionResourceProviderTest.java
index 01ae89b..41299de 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ActionResourceProviderTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ActionResourceProviderTest.java
@@ -98,13 +98,13 @@ public class ActionResourceProviderTest {
List<ActionDefinition> allDefinition = new ArrayList<ActionDefinition>();
allDefinition.add(new ActionDefinition(
"a1", ActionType.SYSTEM, "fileName", "HDFS", "DATANODE", "Does file exist", TargetHostType.ANY,
- Short.valueOf("100"), null));
+ Integer.valueOf("100"), null));
allDefinition.add(new ActionDefinition(
"a2", ActionType.SYSTEM, "fileName", "HDFS", "DATANODE", "Does file exist", TargetHostType.ANY,
- Short.valueOf("100"), null));
+ Integer.valueOf("100"), null));
allDefinition.add(new ActionDefinition(
"a3", ActionType.SYSTEM, "fileName", "HDFS", "DATANODE", "Does file exist", TargetHostType.ANY,
- Short.valueOf("100"), null));
+ Integer.valueOf("100"), null));
Set<ActionResponse> allResponse = new HashSet<ActionResponse>();
for (ActionDefinition definition : allDefinition) {
@@ -113,7 +113,7 @@ public class ActionResourceProviderTest {
ActionDefinition namedDefinition = new ActionDefinition(
"a1", ActionType.SYSTEM, "fileName", "HDFS", "DATANODE", "Does file exist", TargetHostType.ANY,
- Short.valueOf("100"), null);
+ Integer.valueOf("100"), null);
Set<ActionResponse> nameResponse = new HashSet<ActionResponse>();
nameResponse.add(namedDefinition.convertToResponse());