git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH 1/6] t5326: demonstrate potential bitmap corruption

From
Taylor Blau <me@ttaylorr.com>
Date
Aug 22, 2022, 19:41 UTC
Message-ID
<YwPb7qamZGpdRpai@nand.local>
In-Reply-To
<xmqqbksccbxb.fsf@gitster.g>
On Mon, Aug 22, 2022 at 12:31:44PM -0700, Junio C Hamano wrote:
Show 15 quoted lines
> Taylor Blau <me@ttaylorr.com> writes:
>
> >> > +	git init repo &&
> >> > +	test_when_finished "rm -fr repo" &&
> >>
> >> nit: test_when_finished should be the first line of the test.
> >
> > The "rm-then-init-then-test_when_finished" is an (unfortunate) pattern
> > extended throughout t5326, mostly that some tests don't clean up "repo"
> > after deleting and recreating it.
>
> I do not think it is so bad to be defensive to "prepare it cleanly
> enough so that I would not be affected".  So "rm -fr repo && git
> init repo" I would fully support.  "init && test_when_finished" is
> totally indefensible.  It should be the other way around.

Agreed. We should fix those up, probably once Abhradeep's topic has landed, since doing so now would create an avoidable amount of merge conflicts.

Show 7 quoted lines
> > But it's easy enough to just use a separate repository, and avoid
> > removing it altogether. Thanks for the suggestion!
>
> Those who run tests in a batch without "-i" would have more material
> to study and find breakages if you did so.  I agree that is probably
> something worth doing (unless in narrow corner cases where each test
> repository consumes unusual amount of storage or somethinglike that).

Agreed here, too. It's much handier to get a broken state immediately, instead of realizing that a test was broken, commenting out the "test_when_finished" bits, and rerunning it again (not to mention hoping that the failure is deterministic).

Luckily these repositories are small in size, so it doesn't hurt to keep them around.

Thanks, Taylor

Previous: Junio C HamanoNext: Taylor Blau
Message 6 of 29 in “midx: permit changing the preferred pack when reusing the MIDX”
  1. 0/6 midx: permit changing the preferred pack when reusing the MIDXTaylor Blau, Aug 19, 2022
  2. 1/6 t5326: demonstrate potential bitmap corruptionTaylor Blau, Aug 19, 2022
  3. Derrick StoleeAug 22, 2022
  4. Taylor BlauAug 22, 2022
  5. Junio C HamanoAug 22, 2022
  6. Taylor BlauAug 22, 2022
  7. 2/6 t/lib-bitmap.sh: avoid silencing stderrTaylor Blau, Aug 19, 2022
  8. Abhradeep ChakrabortyAug 20, 2022
  9. Taylor BlauAug 22, 2022
  10. 3/6 midx.c: extract `struct midx_fanout`Taylor Blau, Aug 19, 2022
  11. 4/6 midx.c: extract `midx_fanout_add_midx_fanout()`Taylor Blau, Aug 19, 2022
  12. 5/6 midx.c: extract `midx_fanout_add_pack_fanout()`Taylor Blau, Aug 19, 2022
  13. 6/6 midx.c: include preferred pack correctly with existing MIDXTaylor Blau, Aug 19, 2022
  14. Abhradeep ChakrabortyAug 20, 2022
  15. Taylor BlauAug 22, 2022
  16. Derrick StoleeAug 22, 2022
  17. Taylor BlauAug 22, 2022
  18. Derrick StoleeAug 22, 2022
  19. Taylor BlauAug 22, 2022
  20. 0/7 midx: permit changing the preferred pack when reusing the MIDXTaylor Blau, Aug 22, 2022
  21. 1/7 t5326: demonstrate potential bitmap corruptionTaylor Blau, Aug 22, 2022
  22. 2/7 t/lib-bitmap.sh: avoid silencing stderrTaylor Blau, Aug 22, 2022
  23. 3/7 midx.c: extract `struct midx_fanout`Taylor Blau, Aug 22, 2022
  24. 4/7 midx.c: extract `midx_fanout_add_midx_fanout()`Taylor Blau, Aug 22, 2022
  25. 5/7 midx.c: extract `midx_fanout_add_pack_fanout()`Taylor Blau, Aug 22, 2022
  26. 7/7 midx.c: avoid adding preferred objects twiceTaylor Blau, Aug 22, 2022
  27. Derrick StoleeAug 23, 2022
  28. 6/7 midx.c: include preferred pack correctly with existing MIDXTaylor Blau, Aug 22, 2022
  29. Derrick StoleeAug 23, 2022

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.