Re: [RFC PATCH] pack-objects: write objects packed to trace2
- From
- Jeff Hostetler <git@jeffhostetler.com>
- Date
- Apr 10, 2019, 15:05 UTC
- Message-ID
- <15ec5048-d062-7011-b207-ad9c8dbe29cd@jeffhostetler.com>
- In-Reply-To
- <20190409214420.90898-1-jonathantanmy@google.com>
On 4/9/2019 5:44 PM, Jonathan Tan wrote:
Show 26 quoted lines
> This is useful when investigating performance of pushes, and other times
> when no progress information is written (because the pack is written to
> stdout).
>
> Signed-off-by: Jonathan Tan <jonathantanmy@google.com>
> ---
> We're trying to improve push performance, and it would be nice to be
> able to observe the number of objects sent over each push, both to
> correlate it with time taken (which is already traced) and to notice
> situations when significantly more objects are being sent than needed.
>
> Sending this as an RFC because this patch works but is somewhat ad-hoc -
> perhaps someone else has a more comprehensive solution.
> ---
> builtin/pack-objects.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/builtin/pack-objects.c b/builtin/pack-objects.c
> index a154fc29f6..ac464d7d07 100644
> --- a/builtin/pack-objects.c
> +++ b/builtin/pack-objects.c
> @@ -964,6 +964,7 @@ static void write_pack_file(void)
> if (written != nr_result)
> die(_("wrote %"PRIu32" objects while expecting %"PRIu32),
> written, nr_result);
> + trace2_printf("packed %d objects", nr_result);For a simple field like this, you might want to use:
trace2_data_intmax("pack-objects", the_repository,
"write_pack_file/wrote", nr_result);This will give your message visibility in both the perf and event targets. The latter makes it easier for post-processing.
jeff