Subject: Re: [PATCH v2 0/7] trace2: load trace2 settings from system config

From: Josh Steadmon <[email-masked]>
Date: Mon, 1 Apr 2019 14:02:26 -0700

On 2019.03.29 10:04, Jeff Hostetler via GitGitGadget wrote:
> Here is version 2. It addresses most the V1 comments WRT the system config
> changes.
> 
> It also addresses the format and uniqueness of the SID as discussed in [1].
> The SID now containes: the UTC date/time, part of SHA1 of the hostname, and
> the PID and is formatted to make it safe for filenames.
> 
> It also contains (a somewhat unrelated platform-specific) commit to report
> total process memory usage at exit. This is helpful when looking for
> problematic commands that might have scaling problems.
> 
> [1] 
> https://public-inbox.org/git/[email-masked]/T/#m6b4e6f2b0374d5ba88de8d0350ce6bf51b28d7da
> 
> 
> ----------------------------------------------------------------------------
> 
> Teach git to load default Trace2 settings from the system config (usually
> "/etc/gitconfig"). The existing GIT_TR2_* environment variables can be used
> to override the new system defaults. It also includes a little startup
> refactoring.
> 
> Note: I found interactive testing of this feature to be awkward on some
> platforms because of the use of prefix- or runtime-prefix-relative locations
> for the system configuration. It was easy to accidentally use an officially
> installed version of git to set a system config variable in the official
> system config directory; and then when testing with the test version of git,
> that value would not be seen because it was looking for the system config
> file in a different directory.
> 
> Jeff Hostetler (7):
>   trace2: refactor setting process starting time
>   trace2: add absolute elapsed time to start event
>   trace2: find exec-dir before trace2 initialization
>   trace2: use system config for default trace2 settings
>   trace2: report peak memory usage of the process
>   trace2: clarify UTC datetime formatting
>   trace2: make SIDs more unique
> 
>  Documentation/technical/api-trace2.txt   |  66 +++++++++---
>  Makefile                                 |   1 +
>  common-main.c                            |   8 +-
>  compat/mingw.c                           |   2 +
>  compat/win32/trace2_win32_process_info.c |  50 ++++++++-
>  t/t0210-trace2-normal.sh                 |  41 +++++++-
>  t/t0211-trace2-perf.sh                   |  53 ++++++++--
>  t/t0212-trace2-event.sh                  |  52 ++++++++-
>  trace2.c                                 |  21 +++-
>  trace2.h                                 |  43 ++++++--
>  trace2/tr2_cfg.c                         |   7 +-
>  trace2/tr2_dst.c                         |  24 ++---
>  trace2/tr2_dst.h                         |   3 +-
>  trace2/tr2_sid.c                         |  39 ++++++-
>  trace2/tr2_sysenv.c                      | 128 +++++++++++++++++++++++
>  trace2/tr2_sysenv.h                      |  36 +++++++
>  trace2/tr2_tbuf.c                        |  20 +++-
>  trace2/tr2_tbuf.h                        |   5 +-
>  trace2/tr2_tgt.h                         |   1 +
>  trace2/tr2_tgt_event.c                   |  53 +++++-----
>  trace2/tr2_tgt_normal.c                  |  19 ++--
>  trace2/tr2_tgt_perf.c                    |  23 ++--
>  trace2/tr2_tls.c                         |  38 ++++---
>  trace2/tr2_tls.h                         |   8 +-
>  24 files changed, 604 insertions(+), 137 deletions(-)
>  create mode 100644 trace2/tr2_sysenv.c
>  create mode 100644 trace2/tr2_sysenv.h
> 
> 
> base-commit: 041f5ea1cf987a4068ef5f39ba0a09be85952064
> Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-169%2Fjeffhostetler%2Fcore-tr2-startup-and-sysenv-v2
> Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-169/jeffhostetler/core-tr2-startup-and-sysenv-v2
> Pull-Request: https://github.com/gitgitgadget/git/pull/169

This series looks good to me, apart from the open question about
documentation. Thanks!

Reviewed-by: Josh Steadmon <[email-masked]>