azkaban-uncached
Changes
src/java/azkaban/jobtype/JobTypeManager.java 15(+12 -3)
Details
diff --git a/src/java/azkaban/execapp/FlowRunnerManager.java b/src/java/azkaban/execapp/FlowRunnerManager.java
index cc35939..58beb8e 100644
--- a/src/java/azkaban/execapp/FlowRunnerManager.java
+++ b/src/java/azkaban/execapp/FlowRunnerManager.java
@@ -152,7 +152,7 @@ public class FlowRunnerManager implements EventListener {
String fileName = new File(project.getAbsolutePath()).getName();
int projectId = Integer.parseInt(fileName.split("\\.")[0]);
int versionNum = Integer.parseInt(fileName.split("\\.")[1]);
- ProjectVersion version = new ProjectVersion(projectId, versionNum);
+ ProjectVersion version = new ProjectVersion(projectId, versionNum, project);
allProjects.put(new Pair<Integer, Integer>(projectId, versionNum), version);
}
catch (Exception e) {
@@ -239,6 +239,7 @@ public class FlowRunnerManager implements EventListener {
if (currentTime - OLD_PROJECT_DIR_INTERVAL_MS > lastOldProjectCleanTime) {
logger.info("Cleaning old projects");
cleanOlderProjects();
+
lastOldProjectCleanTime = currentTime;
}
@@ -340,6 +341,7 @@ public class FlowRunnerManager implements EventListener {
try {
logger.info("Removing old unused installed project " + version.getProjectId() + ":" + version.getVersion());
version.deleteDirectory();
+ installedProjects.remove(new Pair<Integer, Integer>(version.getProjectId(), version.getVersion()));
} catch (IOException e) {
e.printStackTrace();
}
diff --git a/src/java/azkaban/execapp/JobRunner.java b/src/java/azkaban/execapp/JobRunner.java
index a14aff5..e5e0d02 100644
--- a/src/java/azkaban/execapp/JobRunner.java
+++ b/src/java/azkaban/execapp/JobRunner.java
@@ -321,9 +321,10 @@ public class JobRunner extends EventHandler implements Runnable {
try {
job.run();
} catch (Exception e) {
+ e.printStackTrace();
node.setStatus(Status.FAILED);
logError("Job run failed!");
- logError(e.getMessage());
+ logError(e.getMessage() + e.getCause());
return;
}
diff --git a/src/java/azkaban/execapp/ProjectVersion.java b/src/java/azkaban/execapp/ProjectVersion.java
index 7a9adac..18e6e58 100644
--- a/src/java/azkaban/execapp/ProjectVersion.java
+++ b/src/java/azkaban/execapp/ProjectVersion.java
@@ -23,6 +23,12 @@ public class ProjectVersion implements Comparable<ProjectVersion> {
this.projectId = projectId;
this.version = version;
}
+
+ public ProjectVersion(int projectId, int version, File installedDir) {
+ this.projectId = projectId;
+ this.version = version;
+ this.installedDir = installedDir;
+ }
public int getProjectId() {
return projectId;
@@ -77,6 +83,7 @@ public class ProjectVersion implements Comparable<ProjectVersion> {
}
public synchronized void deleteDirectory() throws IOException {
+ System.out.println("Deleting old unused project versin " + installedDir);
if (installedDir != null && installedDir.exists()) {
FileUtils.deleteDirectory(installedDir);
}
src/java/azkaban/jobtype/JobTypeManager.java 15(+12 -3)
diff --git a/src/java/azkaban/jobtype/JobTypeManager.java b/src/java/azkaban/jobtype/JobTypeManager.java
index a6db77d..dc24db7 100644
--- a/src/java/azkaban/jobtype/JobTypeManager.java
+++ b/src/java/azkaban/jobtype/JobTypeManager.java
@@ -105,9 +105,15 @@ public class JobTypeManager
if(confFile != null) {
globalConf = new Props(null, confFile);
}
+ else {
+ globalConf = new Props();
+ }
if(sysConfFile != null) {
globalSysConf = new Props(null, sysConfFile);
}
+ else {
+ globalSysConf = new Props();
+ }
}
catch (Exception e) {
throw new JobTypeManagerException("Failed to get global jobtype properties" + e.getCause());
@@ -198,10 +204,13 @@ public class JobTypeManager
conf = new Props(commonConf, confFile);
// conf = PropsUtils.resolveProps(conf);
}
- if(sysConfFile != null) {
- sysConf = new Props(commonSysConf, sysConfFile);
- sysConf = PropsUtils.resolveProps(sysConf);
+ else {
+ conf = new Props(commonConf);
}
+
+ sysConf = new Props(commonSysConf, sysConfFile);
+ sysConf = PropsUtils.resolveProps(sysConf);
+
}
catch (Exception e) {
throw new JobTypeManagerException("Failed to get jobtype properties" + e.getMessage());
diff --git a/src/java/azkaban/webapp/AzkabanWebServer.java b/src/java/azkaban/webapp/AzkabanWebServer.java
index 3ebd2d7..7494878 100644
--- a/src/java/azkaban/webapp/AzkabanWebServer.java
+++ b/src/java/azkaban/webapp/AzkabanWebServer.java
@@ -114,6 +114,7 @@ public class AzkabanWebServer implements AzkabanServer {
public static final String JDO_PROPERTIES_FILE = "jdo.properties";
private static final int MAX_FORM_CONTENT_SIZE = 10*1024*1024;
+ private static final int MAX_HEADER_BUFFER_SIZE = 10*1024*1024;
private static AzkabanWebServer app;
private static final String DEFAULT_TIMEZONE_ID = "default.timezone.id";
@@ -415,6 +416,7 @@ public class AzkabanWebServer implements AzkabanServer {
secureConnector.setKeyPassword(azkabanSettings.getString("jetty.keypassword"));
secureConnector.setTruststore(azkabanSettings.getString("jetty.truststore"));
secureConnector.setTrustPassword(azkabanSettings.getString("jetty.trustpassword"));
+ secureConnector.setHeaderBufferSize(MAX_HEADER_BUFFER_SIZE);
server.addConnector(secureConnector);
app = new AzkabanWebServer(server, azkabanSettings);