From 507a4e56b8ee396e4121958a4eeda4d690e224ab Mon Sep 17 00:00:00 2001 From: Harald Musum Date: Wed, 30 Sep 2020 19:23:03 +0200 Subject: Handle verifySession failing --- .../yahoo/vespa/filedistribution/FileReceiver.java | 19 +++++++++++-------- 1 file 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."); -- cgit v1.2.3