summaryrefslogtreecommitdiffstats
path: root/controller-api
diff options
context:
space:
mode:
authorJon Bratseth <bratseth@yahoo-inc.com>2017-09-07 15:28:59 +0200
committerJon Bratseth <bratseth@yahoo-inc.com>2017-09-07 15:28:59 +0200
commit58bf8e268ce2e59329d0fddb458046b337f7f6b5 (patch)
treeb575cfae5b56a55a0598549cf86206d6cef75592 /controller-api
parent4f322fa06ca0a2431a0c7b29a7f8c089e33f4d6a (diff)
Don't fail to return an issue
Diffstat (limited to 'controller-api')
-rw-r--r--controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/stubs/LoggingIssues.java17
1 files changed, 12 insertions, 5 deletions
diff --git a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/stubs/LoggingIssues.java b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/stubs/LoggingIssues.java
index 13f4db35ff0..3c9488e04d3 100644
--- a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/stubs/LoggingIssues.java
+++ b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/stubs/LoggingIssues.java
@@ -44,10 +44,16 @@ public class LoggingIssues implements Issues {
public String file(Issue issue) {
log.info("Want to file " + issue);
String issueId = "issue-" + issueIdSequence.getAndIncrement();
- issues.put(issueId, issue);
- issueInfos.put(issueId, new IssueInfo(issueId, null, Instant.now(), null, IssueInfo.Status.noCategory));
+ file(issueId, issue);
return issueId;
}
+
+ private IssueInfo file(String issueId, Issue issue) {
+ IssueInfo issueInfo = new IssueInfo(issueId, null, Instant.now(), null, IssueInfo.Status.noCategory);
+ issues.put(issueId, issue);
+ issueInfos.put(issueId, issueInfo);
+ return issueInfo;
+ }
@Override
public void update(String issueId, String description) {
@@ -80,9 +86,10 @@ public class LoggingIssues implements Issues {
private IssueInfo requireInfo(String issueId) {
IssueInfo info = issueInfos.get(issueId);
- if (info == null)
- throw new IllegalArgumentException("No issue info with id '" + issueId + "'");
- return info;
+ if (info != null) // we still remember this issue
+ return info;
+ else // we forgot this issue (due to restart) - recreate it here to avoid log noise
+ return file(issueId, new Issue("(Forgotten)", ""));
}
}