Details
diff --git a/azkaban-common/src/main/java/azkaban/executor/ExecutionOptions.java b/azkaban-common/src/main/java/azkaban/executor/ExecutionOptions.java
index 5049743..d8b10f1 100644
--- a/azkaban-common/src/main/java/azkaban/executor/ExecutionOptions.java
+++ b/azkaban-common/src/main/java/azkaban/executor/ExecutionOptions.java
@@ -37,8 +37,6 @@ public class ExecutionOptions {
/* override dispatcher selection and use executor id specified */
public static final String USE_EXECUTOR = "useExecutor";
public static final int DEFAULT_FLOW_PRIORITY = 5;
- public static final String TRIGGER_SPEC = "triggerSpec";
- public static final String TRIGGER_FILE = "triggerFile";
private static final String FLOW_PARAMETERS = "flowParameters";
private static final String NOTIFY_ON_FIRST_FAILURE = "notifyOnFirstFailure";
diff --git a/azkaban-common/src/main/java/azkaban/project/DirectoryFlowLoader.java b/azkaban-common/src/main/java/azkaban/project/DirectoryFlowLoader.java
index 79a6e87..2295435 100644
--- a/azkaban-common/src/main/java/azkaban/project/DirectoryFlowLoader.java
+++ b/azkaban-common/src/main/java/azkaban/project/DirectoryFlowLoader.java
@@ -18,7 +18,6 @@ package azkaban.project;
import java.io.File;
import java.io.FileFilter;
-import java.io.FileInputStream;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Arrays;
@@ -29,7 +28,6 @@ import java.util.List;
import java.util.Map;
import java.util.Set;
-import org.apache.commons.io.IOUtils;
import org.apache.log4j.Logger;
import azkaban.flow.CommonJobProperties;
@@ -49,7 +47,6 @@ import azkaban.utils.Utils;
public class DirectoryFlowLoader implements ProjectValidator {
private static final DirFilter DIR_FILTER = new DirFilter();
private static final String PROPERTY_SUFFIX = ".properties";
- private static final String TRIGGER_SUFFIX = ".trigger";
private static final String JOB_SUFFIX = ".job";
public static final String JOB_MAX_XMS = "job.max.Xms";
public static final String MAX_XMS_DEFAULT = "1G";
@@ -63,7 +60,6 @@ public class DirectoryFlowLoader implements ProjectValidator {
private HashSet<String> rootNodes;
private HashMap<String, Flow> flowMap;
private HashMap<String, Node> nodeMap;
- private HashMap<String, String> triggerMap;
private HashMap<String, Map<String, Edge>> nodeDependencies;
private HashMap<String, Props> jobPropsMap;
@@ -112,16 +108,6 @@ public class DirectoryFlowLoader implements ProjectValidator {
public Map<String, Props> getJobProps() {
return jobPropsMap;
}
-
- /**
- * Returns triggers
- *
- * @return Map of trigger file name to trigger json
- */
- public Map<String, String> getTriggerMap() {
- return triggerMap;
- }
-
/**
* Returns list of properties.
@@ -144,7 +130,6 @@ public class DirectoryFlowLoader implements ProjectValidator {
jobPropsMap = new HashMap<String, Props>();
nodeMap = new HashMap<String, Node>();
flowMap = new HashMap<String, Flow>();
- triggerMap = new HashMap<String, String>();
errors = new HashSet<String>();
duplicateJobs = new HashSet<String>();
nodeDependencies = new HashMap<String, Map<String, Edge>>();
@@ -188,28 +173,6 @@ public class DirectoryFlowLoader implements ProjectValidator {
propsList.add(parent);
}
- //Loading all trigger files
- File[] triggerFiles = dir.listFiles(new SuffixFilter(TRIGGER_SUFFIX));
- for (File file : triggerFiles) {
- FileInputStream fIStream = null;
- try {
- if(!triggerMap.containsKey(file.getName())) {
- fIStream = new FileInputStream(file);
- String triggerJSON = IOUtils.toString(fIStream);
- //TODO: validate trigger JSON
- triggerMap.put(file.getName(), triggerJSON);
- }
- } catch (IOException e) {
- errors.add("Error loading trigger " + file.getName() + ":"
- + e.getMessage());
- } finally {
- if(fIStream != null) {
- IOUtils.closeQuietly(fIStream);
- }
- }
- logger.info("Adding " + file.getName());
- }
-
// Load all Job files. If there's a duplicate name, then we don't load
File[] jobFiles = dir.listFiles(new SuffixFilter(JOB_SUFFIX));
for (File file : jobFiles) {
diff --git a/azkaban-common/src/main/java/azkaban/project/ProjectManager.java b/azkaban-common/src/main/java/azkaban/project/ProjectManager.java
index fb8bbd0..52024f1 100644
--- a/azkaban-common/src/main/java/azkaban/project/ProjectManager.java
+++ b/azkaban-common/src/main/java/azkaban/project/ProjectManager.java
@@ -30,9 +30,6 @@ import java.util.zip.ZipFile;
import org.apache.commons.io.FileUtils;
import org.apache.log4j.Logger;
-import org.codehaus.jackson.JsonGenerationException;
-import org.codehaus.jackson.map.JsonMappingException;
-import org.codehaus.jackson.map.ObjectMapper;
import azkaban.flow.Flow;
import azkaban.project.DirectoryFlowLoader;
@@ -52,7 +49,6 @@ import azkaban.utils.Utils;
public class ProjectManager {
private static final Logger logger = Logger.getLogger(ProjectManager.class);
- public static final String TRIGGER_DATA = "triggers";
private ConcurrentHashMap<Integer, Project> projectsById =
new ConcurrentHashMap<Integer, Project>();
private ConcurrentHashMap<String, Project> projectsByName =
@@ -531,7 +527,6 @@ public class ProjectManager {
(DirectoryFlowLoader) validatorManager.getDefaultValidator();
Map<String, Props> jobProps = loader.getJobProps();
List<Props> propProps = loader.getProps();
- Map<String, String> triggerMap = loader.getTriggerMap();
synchronized (project) {
int newVersion = projectLoader.getLatestProjectVersion(project) + 1;
@@ -555,10 +550,6 @@ public class ProjectManager {
jobProps.values()));
logger.info("Uploading Props properties");
projectLoader.uploadProjectProperties(project, propProps);
-
- logger.info("Uploading trigger files");
- project.getMetadata().put(TRIGGER_DATA, triggerMap);
- projectLoader.updateProjectSettings(project);
}
logger.info("Uploaded project files. Cleaning up temp files.");
diff --git a/azkaban-common/src/main/java/azkaban/scheduler/TriggerBasedScheduleLoader.java b/azkaban-common/src/main/java/azkaban/scheduler/TriggerBasedScheduleLoader.java
index 5010d27..7a3c12a 100644
--- a/azkaban-common/src/main/java/azkaban/scheduler/TriggerBasedScheduleLoader.java
+++ b/azkaban-common/src/main/java/azkaban/scheduler/TriggerBasedScheduleLoader.java
@@ -23,7 +23,6 @@ import java.util.Map;
import org.apache.log4j.Logger;
-import azkaban.executor.ExecutionOptions;
import azkaban.trigger.Condition;
import azkaban.trigger.ConditionChecker;
import azkaban.trigger.Trigger;
@@ -33,7 +32,6 @@ import azkaban.trigger.TriggerManagerAdapter;
import azkaban.trigger.TriggerManagerException;
import azkaban.trigger.builtin.BasicTimeChecker;
import azkaban.trigger.builtin.ExecuteFlowAction;
-import azkaban.trigger.builtin.NyxTriggerChecker;
public class TriggerBasedScheduleLoader implements ScheduleLoader {
@@ -88,17 +86,6 @@ public class TriggerBasedScheduleLoader implements ScheduleLoader {
s.getPeriod());
checkers.put(checker.getId(), checker);
String expr = checker.getId() + ".eval()";
-
- Map<String, String> flowParams =
- s.getExecutionOptions().getFlowParameters();
- if (flowParams != null
- && flowParams.containsKey(ExecutionOptions.TRIGGER_SPEC)) {
- ConditionChecker nyxChecker = new NyxTriggerChecker(
- flowParams.get(ExecutionOptions.TRIGGER_SPEC), "NyxTriggerChecker_1");
- checkers.put(nyxChecker.getId(), nyxChecker);
- expr = " && " + nyxChecker.getId() + ".eval() ";
- }
-
Condition cond = new Condition(checkers, expr);
return cond;
}
diff --git a/azkaban-common/src/main/java/azkaban/server/HttpRequestUtils.java b/azkaban-common/src/main/java/azkaban/server/HttpRequestUtils.java
index 48b848d..fc159ec 100644
--- a/azkaban-common/src/main/java/azkaban/server/HttpRequestUtils.java
+++ b/azkaban-common/src/main/java/azkaban/server/HttpRequestUtils.java
@@ -31,8 +31,6 @@ import azkaban.executor.ExecutionOptions;
import azkaban.executor.ExecutionOptions.FailureAction;
import azkaban.executor.ExecutorManagerException;
import azkaban.executor.mail.DefaultMailCreator;
-import azkaban.project.Project;
-import azkaban.project.ProjectManager;
import azkaban.user.Permission;
import azkaban.user.Permission.Type;
import azkaban.user.Role;
@@ -317,36 +315,4 @@ public class HttpRequestUtils {
return groupParam;
}
- /**
- * Set correct trigger spec using runtime-config or .json file
- *
- * @param flowOptions
- * @param project
- * @throws Exception
- */
- public static void setTriggerSpecification(ExecutionOptions flowOptions,
- Project project) throws Exception {
- Map<String, String> flowParams = flowOptions.getFlowParameters();
- Map<String, Object> metaData = project.getMetadata();
- // User specific TRIGGER_SPEC takes higher priority
- if (flowParams != null
- && !flowParams.containsKey(ExecutionOptions.TRIGGER_SPEC)
- && metaData != null
- && metaData.containsKey(ProjectManager.TRIGGER_DATA)) {
- String triggerName = flowParams.get(ExecutionOptions.TRIGGER_FILE);
- @SuppressWarnings("unchecked")
- Map<String, String> triggers =
- (Map<String, String>) metaData.get(ProjectManager.TRIGGER_DATA);
- if (triggers.containsKey(triggerName)) {
- flowParams.put(ExecutionOptions.TRIGGER_SPEC,
- triggers.get(triggerName));
- } else if (triggers.containsKey(triggerName + ".json")) {
- flowParams.put(ExecutionOptions.TRIGGER_SPEC,
- triggers.get(triggerName + ".json"));
- } else {
- throw new Exception("Unknown trigger file " + triggerName);
- }
- }
- }
-
}
diff --git a/azkaban-common/src/main/java/azkaban/trigger/TriggerManager.java b/azkaban-common/src/main/java/azkaban/trigger/TriggerManager.java
index a15f581..e825202 100644
--- a/azkaban-common/src/main/java/azkaban/trigger/TriggerManager.java
+++ b/azkaban-common/src/main/java/azkaban/trigger/TriggerManager.java
@@ -60,7 +60,6 @@ public class TriggerManager extends EventHandler implements
private final Object syncObj = new Object();
private String scannerStage = "";
- private static Props azprops = null;
public TriggerManager(Props props, TriggerLoader triggerLoader,
ExecutorManager executorManager) throws TriggerManagerException {
@@ -73,8 +72,7 @@ public class TriggerManager extends EventHandler implements
checkerTypeLoader = new CheckerTypeLoader();
actionTypeLoader = new ActionTypeLoader();
- setAzprops(props);
-
+
try {
checkerTypeLoader.init(props);
actionTypeLoader.init(props);
@@ -512,14 +510,6 @@ public class TriggerManager extends EventHandler implements
actionTypeLoader.registerActionType(name, action);
}
- public static Props getAzprops() {
- return azprops;
- }
-
- public static void setAzprops(Props azprops) {
- TriggerManager.azprops = azprops;
- }
-
private class ExecutorManagerEventListener implements EventListener {
public ExecutorManagerEventListener() {
}
diff --git a/azkaban-webserver/src/main/java/azkaban/webapp/servlet/ScheduleServlet.java b/azkaban-webserver/src/main/java/azkaban/webapp/servlet/ScheduleServlet.java
index 4644468..a36505b 100644
--- a/azkaban-webserver/src/main/java/azkaban/webapp/servlet/ScheduleServlet.java
+++ b/azkaban-webserver/src/main/java/azkaban/webapp/servlet/ScheduleServlet.java
@@ -661,7 +661,6 @@ public class ScheduleServlet extends LoginAbstractAzkabanServlet {
try {
flowOptions = HttpRequestUtils.parseFlowOptions(req);
HttpRequestUtils.filterAdminOnlyFlowParams(userManager, flowOptions, user);
- HttpRequestUtils.setTriggerSpecification(flowOptions, project);
} catch (Exception e) {
ret.put("error", e.getMessage());
}