Measure time taken for negotiation in protocol V2
Reason why this change is needed: Getting this metric will help estimate how much time is spent on negotiation in fetch V2. What this patch does: Measure time spent on negotiation rounds in UploadPack.fetchV2() and save it in an instance of PackStatistics.Accumulator. This is the same way the statistics are already gathered for protocol V0/V1. Change-Id: I14e55dd6ff743cb0b21b4953b533269ef069abb1
This commit is contained in:
parent
292919b12a
commit
c3458a6e03
|
@ -1137,6 +1137,9 @@ private void fetchV2(PacketLineOut pckOut) throws IOException {
|
||||||
advertised = refIdSet(getAdvertisedOrDefaultRefs().values());
|
advertised = refIdSet(getAdvertisedOrDefaultRefs().values());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
PackStatistics.Accumulator accumulator = new PackStatistics.Accumulator();
|
||||||
|
long negotiateStart = System.currentTimeMillis();
|
||||||
|
|
||||||
ProtocolV2Parser parser = new ProtocolV2Parser(transferConfig);
|
ProtocolV2Parser parser = new ProtocolV2Parser(transferConfig);
|
||||||
FetchV2Request req = parser.parseFetchRequest(pckIn);
|
FetchV2Request req = parser.parseFetchRequest(pckIn);
|
||||||
currentRequest = req;
|
currentRequest = req;
|
||||||
|
@ -1238,7 +1241,11 @@ private void fetchV2(PacketLineOut pckOut) throws IOException {
|
||||||
// But sideband-all is not used, so we have to write it ourselves.
|
// But sideband-all is not used, so we have to write it ourselves.
|
||||||
pckOut.writeString("packfile\n"); //$NON-NLS-1$
|
pckOut.writeString("packfile\n"); //$NON-NLS-1$
|
||||||
}
|
}
|
||||||
sendPack(new PackStatistics.Accumulator(),
|
|
||||||
|
accumulator.timeNegotiating = System.currentTimeMillis()
|
||||||
|
- negotiateStart;
|
||||||
|
|
||||||
|
sendPack(accumulator,
|
||||||
req,
|
req,
|
||||||
req.getClientCapabilities().contains(OPTION_INCLUDE_TAG)
|
req.getClientCapabilities().contains(OPTION_INCLUDE_TAG)
|
||||||
? db.getRefDatabase().getRefsByPrefix(R_TAGS)
|
? db.getRefDatabase().getRefsByPrefix(R_TAGS)
|
||||||
|
|
Loading…
Reference in New Issue