You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by sh...@apache.org on 2015/05/18 21:50:18 UTC
airavata git commit: handled SLURM cancelled emails.
Repository: airavata
Updated Branches:
refs/heads/master c4b8fb21a -> 18748564f
handled SLURM cancelled emails.
Project: http://git-wip-us.apache.org/repos/asf/airavata/repo
Commit: http://git-wip-us.apache.org/repos/asf/airavata/commit/18748564
Tree: http://git-wip-us.apache.org/repos/asf/airavata/tree/18748564
Diff: http://git-wip-us.apache.org/repos/asf/airavata/diff/18748564
Branch: refs/heads/master
Commit: 18748564fbf920cb37e860be9e5718bb089e164a
Parents: c4b8fb2
Author: shamrath <sh...@gmail.com>
Authored: Mon May 18 15:50:14 2015 -0400
Committer: shamrath <sh...@gmail.com>
Committed: Mon May 18 15:50:14 2015 -0400
----------------------------------------------------------------------
.../gfac/monitor/email/parser/SLURMEmailParser.java | 11 ++++++++---
1 file changed, 8 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/airavata/blob/18748564/modules/gfac/gfac-monitor/gfac-email-monitor/src/main/java/org/apache/airavata/gfac/monitor/email/parser/SLURMEmailParser.java
----------------------------------------------------------------------
diff --git a/modules/gfac/gfac-monitor/gfac-email-monitor/src/main/java/org/apache/airavata/gfac/monitor/email/parser/SLURMEmailParser.java b/modules/gfac/gfac-monitor/gfac-email-monitor/src/main/java/org/apache/airavata/gfac/monitor/email/parser/SLURMEmailParser.java
index 4a1b362..75ffe98 100644
--- a/modules/gfac/gfac-monitor/gfac-email-monitor/src/main/java/org/apache/airavata/gfac/monitor/email/parser/SLURMEmailParser.java
+++ b/modules/gfac/gfac-monitor/gfac-email-monitor/src/main/java/org/apache/airavata/gfac/monitor/email/parser/SLURMEmailParser.java
@@ -41,17 +41,18 @@ public class SLURMEmailParser implements EmailParser {
public static final String BEGAN = "Began";
public static final String ENDED = "Ended";
public static final String FAILED = "Failed";
+ private static final Pattern cancelledStatePattern = Pattern.compile("CANCELLED");
+ private static final Pattern pattern = Pattern.compile(REGEX);
@Override
public JobStatusResult parseEmail(Message message) throws MessagingException, AiravataException{
JobStatusResult jobStatusResult = new JobStatusResult();
String subject = message.getSubject();
- Pattern pattern = Pattern.compile(REGEX);
Matcher matcher = pattern.matcher(subject);
if (matcher.find()) {
jobStatusResult.setJobId(matcher.group(JOBID));
jobStatusResult.setJobName(matcher.group(JOBNAME));
- jobStatusResult.setState(getJobState(matcher.group(STATUS)));
+ jobStatusResult.setState(getJobState(matcher.group(STATUS), subject));
return jobStatusResult;
} else {
log.error("[EJM]: No matched found for subject -> " + subject);
@@ -59,11 +60,15 @@ public class SLURMEmailParser implements EmailParser {
return jobStatusResult;
}
- private JobState getJobState(String state) {
+ private JobState getJobState(String state, String subject) {
switch (state.trim()) {
case BEGAN:
return JobState.ACTIVE;
case ENDED:
+ Matcher matcher = cancelledStatePattern.matcher(subject);
+ if (matcher.find()) {
+ return JobState.CANCELED;
+ }
return JobState.COMPLETE;
case FAILED:
return JobState.FAILED;