Thread (18 messages) flat view 18 messages, 2 authors, 2021-10-07

Re: [PATCH 0/7] leak tests: fix "test-tool" & other small leaks

From: Elijah Newren <hidden>
Date: 2021-10-06 16:48:01

On Wed, Oct 6, 2021 at 3:02 AM Ævar Arnfjörð Bjarmason [off-list ref] wrote:
Like my just-submitted series to mark existing tests as passing[1]
under the test mode added in ab/sanitize-leak-ci, this marks more
tests as passing, but here we need to fix some small memory
leaks. This goes on top of ab/sanitize-leak-ci.

Like [1] I merged each of these with "seen" and tested them with
GIT_TEST_PASSING_SANITIZE_LEAK=true, so they should hopefully not be a
hassle while cooking. This doesn't inter-depend on any other topic I
have except ab/sanitize-leak-ci.
Modulo a tiny comment on one of the commit messages, this series looks
good to me.
But with the outstanding topics I've got in this area (+ [2] + [3] +
[4]) and Elijah's en/removing-untracked-fixes these topics in
combination will get us to a spot where we can start fixing the big blocking memory leaks in the test suite.

I.e. most tests fail because "git log" and "git checkout" leak when
doing almost anything. I've got patches on top of this which fix both
of those for 80-90% of cases. After that most failing tests will have
failures because of things specific to those tests, not just because
their setup code dies as they use "git checkout" or "git log" to set
something up.

1. https://lore.kernel.org/git/cover-00.10-00000000000-20211006T094705Z-avarab@gmail.com/ (local)
2. https://lore.kernel.org/git/cover-0.2-00000000000-20211006T093405Z-avarab@gmail.com (local)
3. https://lore.kernel.org/git/cover-v4-0.5-00000000000-20211002T201434Z-avarab@gmail.com/ (local)
4. https://lore.kernel.org/git/cover-v2-0.5-00000000000-20210927T124407Z-avarab@gmail.com/#t (local)

Ævar Arnfjörð Bjarmason (7):
  tests: fix a memory leak in test-prio-queue.c
  tests: fix a memory leak in test-parse-options.c
  tests: fix a memory leak in test-oidtree.c
  tests: fix test-oid-array leak, test in SANITIZE=leak
  ls-files: fix a trivial dir_clear() leak
  ls-files: add missing string_list_clear()
  merge: add missing strbuf_release()

 builtin/ls-files.c                 | 14 ++++++--------
 builtin/merge.c                    |  2 ++
 t/helper/test-oid-array.c          |  4 ++++
 t/helper/test-oidtree.c            |  3 +++
 t/helper/test-parse-options.c      |  7 ++++++-
 t/helper/test-prio-queue.c         |  2 ++
 t/t0009-prio-queue.sh              |  2 ++
 t/t0040-parse-options.sh           |  1 +
 t/t0064-oid-array.sh               |  2 ++
 t/t0069-oidtree.sh                 |  1 +
 t/t3001-ls-files-others-exclude.sh |  5 +++--
 t/t3005-ls-files-relative.sh       |  1 +
 t/t3020-ls-files-error-unmatch.sh  |  2 ++
 t/t3700-add.sh                     |  1 +
 t/t7104-reset-hard.sh              |  1 +
 t/t7604-merge-custom-message.sh    |  1 +
 16 files changed, 38 insertions(+), 11 deletions(-)

--
2.33.0.1441.gbbcdb4c3c66
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help