-
Notifications
You must be signed in to change notification settings - Fork 97
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
trace2:gvfs:experiment Add experimental regions and data events to help diagnose checkout and reset perf problems #160
trace2:gvfs:experiment Add experimental regions and data events to help diagnose checkout and reset perf problems #160
Conversation
51d386d
to
717d4f1
Compare
@jeffhostetler looks like t9800 needs an adjustment to its check for tracing, which is annoying. |
@@ -1660,6 +1663,8 @@ int unpack_trees(unsigned len, struct tree_desc *t, struct unpack_trees_options | |||
done: | |||
trace_performance_leave("unpack_trees"); | |||
clear_exclude_list(&el); | |||
trace2_data_intmax("exp", NULL, "unpack_trees/nr_unpack_entries", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It seems that sometimes, the experiments are prefixed with "exp"
, but sometimes not. Did you mean to prefix all of them in that manner, or was it intentional to do that only with some, but not others?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
yeah, i've been inconsistent. i was using "exp" for things i consider really temporary while we gather some data for a release or 2. most of the other ones that have real categories, but have "experiment" in the commit message are things that i could keep and maybe upstream or could just drop. i'm trying to not flood the telemetry stream with things that may not be useful long term, but at the same time gather enough data for our immediate analysis needs.
I don't know... that's a p4 test that seems to be flaky. I restarted the |
/azp run |
Azure Pipelines successfully started running 1 pipeline(s). |
Signed-off-by: Jeff Hostetler <jeffhost@microsoft.com>
Signed-off-by: Jeff Hostetler <jeffhost@microsoft.com>
Signed-off-by: Jeff Hostetler <jeffhost@microsoft.com>
…and report_tracking() Signed-off-by: Jeff Hostetler <jeffhost@microsoft.com>
717d4f1
to
8d2815d
Compare
```
CC credential.o
config.c: In function 'git_parse_signed':
config.c:873:10: error: absolute value function 'labs' given an argument of type 'intmax_t' {aka 'long long int'} but has parameter of type 'long int' which may cause truncation of value [-Werror=absolute-value]
873 | uval = labs(val);
| ^~~~
config.c:875:21: error: absolute value function 'labs' given an argument of type 'intmax_t' {aka 'long long int'} but has parameter of type 'long int' which may cause truncation of value [-Werror=absolute-value]
CC csum-file.o
CC ctype.o
875 | if (uval > max || labs(val) > uval) {
| ^~~~
CC date.o
cc1.exe: all warnings being treated as errors
CC delta-islands.o
make: *** [Makefile:2383: config.o] Error 1
make: *** Waiting for unfinished jobs....
CC decorate.o
```
so many cross-plat things to keep in mind. :(
Indeed. Sorry about my mistake: I should have fixed this in
microsoft/git a lot earlier...
|
Includes changes from: * microsoft/git#158 * microsoft/git#159 * microsoft/git#160 * microsoft/git#162 Signed-off-by: Derrick Stolee <dstolee@microsoft.com>
Includes changes from: * microsoft/git#158 (experimental tracing: trace threading and cache-tree extension) * microsoft/git#159 (experimental tracing: prime_cache_tree()) * microsoft/git#160 (experimental tracing: checkout and reset perf) * microsoft/git#162 (support building with GCC v9.x)
After the recent a38edab (Makefile: generate doc versions via GIT-VERSION-GEN, 2024-12-06), building with Asciidoctor results in manpages where the headers no longer contain "Git Manual" and the footers no longer identify the built Git version. Before a38edab, we used to just provide a few attributes to Asciidoctor (and asciidoc). Commit 7a30134 (asciidoctor-extensions: provide `<refmiscinfo/>`, 2019-09-16) noted that older versions of Asciidoctor didn't propagate those attributes into the built XML files, so we started injecting them ourselves from this script. With newer versions of Asciidoctor, we'd end up with some harmless duplication among the tags in the final XML. Post-a38edab7c8, we don't provide these attributes and Asciidoctor inserts empty-ish values. After our additions from 7a30134, we get <refmiscinfo class="source"> </refmiscinfo> <refmiscinfo class="manual"> </refmiscinfo> <refmiscinfo class="source">2.47.1.[...]</refmiscinfo> <refmiscinfo class="manual">Git Manual</refmiscinfo> When these are handled, it appears to be first come first served, meaning that our additions have no effect and we regress as described in the first paragraph. Remove existing "source" or "manual" <refmiscinfo/> tags before adding ours. I considered removing all <refmiscinfo/> to get a nice clean slate, instead of just those two that we want to replace to be a bit more precise. I opted for the latter. Maybe one day, Asciidoctor learns to insert something useful there which `xmlto` can pick up and make good use of -- let's not interfere. Signed-off-by: Martin Ågren <martin.agren@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Add experimental regions and data events to help diagnose
performance problems in checkout and reset.
We may or may not choose to carry these changes forward in the future.