pack-objects: add tracing for various packfile metrics
As part of the multi-pack reuse effort, we will want to add some tests that assert that we reused a certain number of objects from a certain number of packs. We could do this by grepping through the stderr output of `pack-objects`, but doing so would be brittle in case the output format changed. Instead, let's use the trace2 mechanism to log various pieces of information about the generated packfile, which we can then use to compare against desired values. Signed-off-by: Taylor Blau <me@ttaylorr.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Taylor Blau committed
Dec 14, 2023 at 17:24 UTC
54393e4e68f2b4cf1ebaab8a934e83c9384595af
1 file changed
+7
builtin/pack-objects.c
+7
@@ -4595,6 +4595,13 @@ int cmd_pack_objects(int argc, const char **argv, const char *prefix)
4595
reuse_packfile_objects,
4596
(uintmax_t)reuse_packfiles_used_nr);
4597
4598
+ trace2_data_intmax("pack-objects", the_repository, "written", written);
4599
+ trace2_data_intmax("pack-objects", the_repository, "written/delta", written_delta);
4600
+ trace2_data_intmax("pack-objects", the_repository, "reused", reused);
4601
+ trace2_data_intmax("pack-objects", the_repository, "reused/delta", reused_delta);
4602
+ trace2_data_intmax("pack-objects", the_repository, "pack-reused", reuse_packfile_objects);
4603
+ trace2_data_intmax("pack-objects", the_repository, "packs-reused", reuse_packfiles_used_nr);
4604
+
4605
cleanup:
4606
clear_packing_data(&to_pack);
4607
list_objects_filter_release(&filter_options);