From 7b7d033ee1fdd8e81ae2ad7dc9e1ae12cbd9ddfa Mon Sep 17 00:00:00 2001 From: Shawn Pearce Date: Fri, 29 Aug 2014 12:56:17 -0700 Subject: [PATCH] UploadPack: Always make PackWriter.Statistics available If the packer fails, still obtain the stats and make them available to the logger and the caller. Failures can frequently happen when a client disconnects in the middle of a pack stream. Server admins may still want to examine the timing metrics from counting and compressing phases. Change-Id: Iceae4f68b5473f4223d85c9edfb57837fc818eed --- .../src/org/eclipse/jgit/transport/UploadPack.java | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/transport/UploadPack.java b/org.eclipse.jgit/src/org/eclipse/jgit/transport/UploadPack.java index b007f2b51..83806f129 100644 --- a/org.eclipse.jgit/src/org/eclipse/jgit/transport/UploadPack.java +++ b/org.eclipse.jgit/src/org/eclipse/jgit/transport/UploadPack.java @@ -1413,7 +1413,6 @@ else if (ref.getName().startsWith(Constants.R_HEADS)) } pw.writePack(pm, NullProgressMonitor.INSTANCE, packOut); - statistics = pw.getStatistics(); if (msgOut != NullOutputStream.INSTANCE) { String msg = pw.getStatistics().getMessage() + '\n'; @@ -1422,13 +1421,13 @@ else if (ref.getName().startsWith(Constants.R_HEADS)) } } finally { + statistics = pw.getStatistics(); + if (statistics != null) + logger.onPackStatistics(statistics); pw.release(); } if (sideband) pckOut.end(); - - if (statistics != null) - logger.onPackStatistics(statistics); } }