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
This commit is contained in:
Shawn Pearce 2014-08-29 12:56:17 -07:00
parent 6be184e15c
commit 7b7d033ee1
1 changed files with 3 additions and 4 deletions

View File

@ -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);
}
}