AMBARI-49. Minor bug fix for controller UI. (Eric Yang)
git-svn-id: https://svn.apache.org/repos/asf/incubator/ambari/branches/branch-0.0@1184759 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/controller/src/main/java/org/apache/hms/controller/CommandHandler.java b/controller/src/main/java/org/apache/hms/controller/CommandHandler.java
index fbebd66..33ea1bd 100755
--- a/controller/src/main/java/org/apache/hms/controller/CommandHandler.java
+++ b/controller/src/main/java/org/apache/hms/controller/CommandHandler.java
@@ -18,10 +18,8 @@
package org.apache.hms.controller;
-import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
-import java.util.Collections;
import java.util.Date;
import java.util.HashMap;
import java.util.HashSet;
@@ -35,17 +33,14 @@
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
-import org.apache.hms.controller.Controller;
import org.apache.hms.common.conf.CommonConfigurationKeys;
import org.apache.hms.common.entity.Status;
import org.apache.hms.common.entity.action.Action;
import org.apache.hms.common.entity.action.ActionDependency;
import org.apache.hms.common.entity.action.ActionStatus;
import org.apache.hms.common.entity.action.PackageAction;
-import org.apache.hms.common.entity.action.ScriptAction;
import org.apache.hms.common.entity.cluster.MachineState;
import org.apache.hms.common.entity.cluster.MachineState.StateEntry;
-import org.apache.hms.common.entity.cluster.MachineState.StateType;
import org.apache.hms.common.entity.command.ClusterCommand;
import org.apache.hms.common.entity.command.Command;
import org.apache.hms.common.entity.command.CommandStatus;
@@ -54,18 +49,15 @@
import org.apache.hms.common.entity.command.UpgradeClusterCommand;
import org.apache.hms.common.entity.command.CommandStatus.ActionEntry;
import org.apache.hms.common.entity.command.CommandStatus.HostStatusPair;
-import org.apache.hms.common.entity.command.CreateCommand;
import org.apache.hms.common.entity.command.DeleteCommand;
import org.apache.hms.common.entity.manifest.ClusterHistory;
import org.apache.hms.common.entity.manifest.ClusterManifest;
import org.apache.hms.common.entity.manifest.ConfigManifest;
-import org.apache.hms.common.entity.manifest.Node;
import org.apache.hms.common.entity.manifest.NodesManifest;
import org.apache.hms.common.entity.manifest.PackageInfo;
import org.apache.hms.common.entity.manifest.Role;
import org.apache.hms.common.entity.manifest.SoftwareManifest;
import org.apache.hms.common.util.ExceptionUtil;
-import org.apache.hms.common.util.FileUtil;
import org.apache.hms.common.util.JAXBUtil;
import org.apache.hms.common.util.ZookeeperUtil;
import org.apache.zookeeper.AsyncCallback.Children2Callback;
@@ -75,13 +67,13 @@
import org.apache.zookeeper.WatchedEvent;
import org.apache.zookeeper.Watcher;
import org.apache.zookeeper.ZooKeeper;
-import org.apache.zookeeper.Watcher.Event;
import org.apache.zookeeper.ZooDefs.Ids;
import org.apache.zookeeper.data.Stat;
public class CommandHandler implements Children2Callback, VoidCallback, Watcher {
private static Log LOG = LogFactory.getLog(CommandHandler.class);
+ private static long SEVEN_DAYS = 1000L*60*1440*7;
private static String AGENT_ACTION = "/action";
private static String AGENT_STATUS = "/status";
private static String AGENT_WORKLOG = "/worklog";
@@ -191,6 +183,12 @@
CommandStatus status = JAXBUtil.read(test, CommandStatus.class);
if(status.getStatus()==Status.SUCCEEDED || status.getStatus()==Status.FAILED) {
workOnIt=false;
+ // Delete command, if it has been completed and older than
+ // 7 days
+ if(System.currentTimeMillis()>stat.getMtime()+(SEVEN_DAYS)) {
+ LOG.info("Clean up deployment history: "+taskPath);
+ deleteIfExists(taskPath);
+ }
}
}
if(workOnIt) {
diff --git a/controller/src/main/java/org/apache/hms/controller/Controller.java b/controller/src/main/java/org/apache/hms/controller/Controller.java
index 8fa5efe..e459a2a 100755
--- a/controller/src/main/java/org/apache/hms/controller/Controller.java
+++ b/controller/src/main/java/org/apache/hms/controller/Controller.java
@@ -203,7 +203,7 @@
initializeZooKeeper();
LOG.info("Connected to ZooKeeper");
clientHandler = new ClientHandler(zk);
- commandHandler = new CommandHandler(zk, 5);
+ commandHandler = new CommandHandler(zk, 200);
commandHandler.start();
} catch (Exception e) {
LOG.error(ExceptionUtil.getStackTrace(e));
diff --git a/controller/src/main/webapps/delete-cluster.html b/controller/src/main/webapps/delete-cluster.html
index 39f580b..593b0e9 100644
--- a/controller/src/main/webapps/delete-cluster.html
+++ b/controller/src/main/webapps/delete-cluster.html
@@ -66,7 +66,7 @@
var buffer = [];
var i = 0;
buffer[i++] = role['name'];
- buffer[i++] = role['host'].join();
+ buffer[i++] = role['host'].join(" ");
return buffer;
}
diff --git a/controller/src/main/webapps/status-nodes.html b/controller/src/main/webapps/status-nodes.html
index ef00f16..15ca7ea 100644
--- a/controller/src/main/webapps/status-nodes.html
+++ b/controller/src/main/webapps/status-nodes.html
@@ -116,7 +116,10 @@
});
jQuery.getJSON(url,
function(data) {
+ var i = 0;
+ roles = [];
for(var list in data["roles"]) {
+ roles[i++] = data["roles"][list]["@name"]
$('#form').dataTable().fnAddData(addRole(data["roles"][list]["@name"], data["roles"][list]["host"]));
}
}