AMBARI-19433. Increase default timeout and threadpool size for the external 
script to work on slower machines. (jaimin)


Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/23bd4187
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/23bd4187
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/23bd4187

Branch: refs/heads/branch-dev-logsearch
Commit: 23bd4187cb8442bcc06fd20469e9f8b77158a4cf
Parents: 8e68824
Author: Jaimin Jetly <[email protected]>
Authored: Mon Mar 6 11:41:27 2017 -0800
Committer: Jaimin Jetly <[email protected]>
Committed: Mon Mar 6 11:42:18 2017 -0800

----------------------------------------------------------------------
 .../org/apache/ambari/server/configuration/Configuration.java    | 4 ++--
 .../server/controller/internal/ClientConfigResourceProvider.java | 3 ++-
 2 files changed, 4 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ambari/blob/23bd4187/ambari-server/src/main/java/org/apache/ambari/server/configuration/Configuration.java
----------------------------------------------------------------------
diff --git 
a/ambari-server/src/main/java/org/apache/ambari/server/configuration/Configuration.java
 
b/ambari-server/src/main/java/org/apache/ambari/server/configuration/Configuration.java
index 27ac82c..cfb4d3d 100644
--- 
a/ambari-server/src/main/java/org/apache/ambari/server/configuration/Configuration.java
+++ 
b/ambari-server/src/main/java/org/apache/ambari/server/configuration/Configuration.java
@@ -1754,7 +1754,7 @@ public class Configuration {
    */
   @Markdown(description = "The time, in milliseconds, until an external script 
is killed.")
   public static final ConfigurationProperty<Integer> EXTERNAL_SCRIPT_TIMEOUT = 
new ConfigurationProperty<>(
-      "server.script.timeout", 5000);
+      "server.script.timeout", 10000);
 
   /**
    * The time, in {@link TimeUnit#MILLISECONDS}, until an external script is 
killed.
@@ -1762,7 +1762,7 @@ public class Configuration {
    */
   @Markdown(description = "The number of threads that should be allocated to 
run external script.")
   public static final ConfigurationProperty<Integer> 
THREAD_POOL_SIZE_FOR_EXTERNAL_SCRIPT = new ConfigurationProperty<>(
-    "server.script.threads", 4);
+    "server.script.threads", 20);
 
   public static final String DEF_ARCHIVE_EXTENSION;
   public static final String DEF_ARCHIVE_CONTENT_TYPE;

http://git-wip-us.apache.org/repos/asf/ambari/blob/23bd4187/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ClientConfigResourceProvider.java
----------------------------------------------------------------------
diff --git 
a/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ClientConfigResourceProvider.java
 
b/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ClientConfigResourceProvider.java
index 42e9b34..b690e3a 100644
--- 
a/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ClientConfigResourceProvider.java
+++ 
b/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ClientConfigResourceProvider.java
@@ -479,7 +479,8 @@ public class ClientConfigResourceProvider extends 
AbstractControllerResourceProv
       throw new SystemException("No configuration files defined for any 
component" );
     }
 
-    Integer threadPoolSize = configs.getExternalScriptThreadPoolSize();
+    Integer totalCommands = pythonCompressFilesCmds.size() * 2;
+    Integer threadPoolSize = 
Math.min(totalCommands,configs.getExternalScriptThreadPoolSize());
     ExecutorService processExecutor = 
Executors.newFixedThreadPool(threadPoolSize);
 
     // put all threads that starts process to compress each component config 
files in the executor

Reply via email to