Subject: Re: What's cooking in git.git (Sep 2024, #09; Mon, 23)

From: Patrick Steinhardt <[email-masked]>
Date: Tue, 24 Sep 2024 09:36:55 +0200

On Mon, Sep 23, 2024 at 03:02:39PM -0700, Junio C Hamano wrote:
> * ps/reftable-concurrent-writes (2024-09-19) 3 commits
>  - refs/reftable: reload locked stack when preparing transaction
>  - reftable/stack: allow locking of outdated stacks
>  - refs/reftable: introduce "reftable.lockTimeout"
> 
>  Give timeout to the locking code to write to reftable.
> 
>  Will merge to 'next'.
>  source: <[email-masked]>

We're drawing closer to Git v2.47-rc0, and this topic looks like it will
be included based on its current status. But to make things explicit:
this fixes real issues I have hit in the wild with the reftable backend
that are caused by concurrent writes and that can lead to annoying
behaviour, so I want to ensure that this topic really does end up in Git
v2.47.

Just as a heads up :)

> * ps/leakfixes-part-7 (2024-09-16) 24 commits
>  - diffcore-break: fix leaking filespecs when merging broken pairs
>  - revision: fix leaking parents when simplifying commits
>  - builtin/maintenance: fix leak in `get_schedule_cmd()`
>  - builtin/maintenance: fix leaking config string
>  - promisor-remote: fix leaking partial clone filter
>  - grep: fix leaking grep pattern
>  - submodule: fix leaking submodule ODB paths
>  - trace2: destroy context stored in thread-local storage
>  - builtin/difftool: plug several trivial memory leaks
>  - builtin/repack: fix leaking configuration
>  - diffcore-order: fix leaking buffer when parsing orderfiles
>  - parse-options: free previous value of `OPTION_FILENAME`
>  - diff: fix leaking orderfile option
>  - builtin/pull: fix leaking "ff" option
>  - dir: fix off by one errors for ignored and untracked entries
>  - builtin/submodule--helper: fix leaking remote ref on errors
>  - t/helper: fix leaking subrepo in nested submodule config helper
>  - builtin/submodule--helper: fix leaking error buffer
>  - builtin/submodule--helper: clear child process when not running it
>  - submodule: fix leaking update strategy
>  - git: fix leaking argv when handling builtins
>  - builtin/help: fix leaking `html_path` when reading config multiple times
>  - builtin/help: fix dangling reference to `html_path`
>  - Merge branch 'ps/leakfixes-part-6' into ps/leakfixes-part-7
> 
>  More leak-fixes.
> 
>  Will merge to 'next'?
>  source: <[email-masked]>

I do not plan a reroll of this series right now, and your review read
favorable to me. So I'm happy to have it merged now-ish, but I'm also
okay if you want to wait a couple more days to maybe get more eyes onto
it.

Overall, there is light at the end of this tunnel:

  - I've got ~45 patches in the pipeline which I'll split up over two
    more patch series.

  - I've nerd-sniped Peff into fixing leaks in the http-walker for me,
    and that patch series will likely end up on the mailing list later
    this week.

With that, we're now at 7 remaining test suites which aren't yet leak
free. So overall, I think it's going to be four more patch series in
total until we're done with the effort. And then one final patch to
convert the leak sanitizer from opt-in into opt-out.

Patrick