summaryrefslogtreecommitdiffstats
path: root/filedistribution
diff options
context:
space:
mode:
authorHarald Musum <musum@verizonmedia.com>2020-09-30 19:23:03 +0200
committerHarald Musum <musum@verizonmedia.com>2020-09-30 19:23:03 +0200
commit507a4e56b8ee396e4121958a4eeda4d690e224ab (patch)
tree0032bd0ebb59e1a9465b69754a37dc56beef4840 /filedistribution
parent34dab610ddd92ad13849c7244d7c60f4a1a8e43c (diff)
Handle verifySession failing
Diffstat (limited to 'filedistribution')
-rw-r--r--filedistribution/src/main/java/com/yahoo/vespa/filedistribution/FileReceiver.java19
1 files changed, 11 insertions, 8 deletions
diff --git a/filedistribution/src/main/java/com/yahoo/vespa/filedistribution/FileReceiver.java b/filedistribution/src/main/java/com/yahoo/vespa/filedistribution/FileReceiver.java
index 875058b2eff..73c289b7d51 100644
--- a/filedistribution/src/main/java/com/yahoo/vespa/filedistribution/FileReceiver.java
+++ b/filedistribution/src/main/java/com/yahoo/vespa/filedistribution/FileReceiver.java
@@ -248,15 +248,17 @@ public class FileReceiver {
byte [] part = req.parameters().get(3).asData();
Session session = getSession(sessionId);
int retval = verifySession(session, sessionId, reference);
- try {
- session.addPart(partId, part);
- } catch (Exception e) {
- log.severe("Got exception " + e);
- retval = 1;
+ if (retval == 0) {
+ try {
+ session.addPart(partId, part);
+ } catch (Exception e) {
+ log.severe("Got exception " + e);
+ retval = 1;
+ }
+ double completeness = (double) session.currentFileSize / (double) session.fileSize;
+ log.log(Level.FINEST, () -> String.format("%.1f percent of '%s' downloaded", completeness * 100, reference.value()));
+ downloader.setDownloadStatus(reference, completeness);
}
- double completeness = (double) session.currentFileSize / (double) session.fileSize;
- log.log(Level.FINEST, () -> String.format("%.1f percent of '%s' downloaded", completeness * 100, reference.value()));
- downloader.setDownloadStatus(reference, completeness);
req.returnValues().add(new Int32Value(retval));
}
@@ -280,6 +282,7 @@ public class FileReceiver {
return sessions.get(sessionId);
}
}
+
private static int verifySession(Session session, int sessionId, FileReference reference) {
if (session == null) {
log.severe("session-id " + sessionId + " does not exist.");