From: Jeff Hostetler Date: Mon, 15 Aug 2022 15:08:24 GMT Subject: Re: [PATCH v2] fetch-pack: add tracing for negotiation rounds Message-ID: <7dae2e8b-1168-3738-8efb-7ecfdfae796a@jeffhostetler.com> In-Reply-To: <4390677ec75d51487142adf7c2ab821cbd24a53e.1659477669.git.steadmon@google.com> On 8/2/22 6:04 PM, Josh Steadmon wrote: > Currently, negotiation for V0/V1/V2 fetch have trace2 regions covering > the entire negotiation process. However, we'd like additional data, such > as timing for each round of negotiation or the number of "haves" in each > round. Additionally, "independent negotiation" (AKA push negotiation) > has no tracing at all. Having this data would allow us to compare the > performance of the various negotation implementations, and to debug > unexpectedly slow fetch & push sessions. > > Add per-round trace2 regions for all negotiation implementations (V0+V1, > V2, and independent negotiation), as well as an overall region for > independent negotiation. Add trace2 data logging for the number of haves > and "in vain" objects for each round, and for the total number of rounds > once negotiation completes. Finally, add a few checks into various > tests to verify that the number of rounds is logged as expected. > > Signed-off-by: Josh Steadmon Sorry for the delay in responding. Just got back from a much needed vacation. This version LGTM. Thanks Jeff