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

Re: [PATCH] t5520: don't expire reflogs where it matters

From
D. Ben Knoble <ben.knoble@gmail.com>
Date
Sep 29, 2026, 11:48 UTC
Message-ID
<CALnO6CDMTHw9EqvvD5_s7WhFVhukr936ddhuJwdOhdJGdwmrRA@mail.gmail.com>
In-Reply-To
<89E3CD2E-8366-4C5A-B3A4-8F44AC5F89DF@gmail.com>
On Mon, Sep 28, 2026 at 4:45 PM Ben Knoble <ben.knoble@gmail.com> wrote:
Show 43 quoted lines
>
>
> > Le 28 sept. 2026 à 10:38, Thomas Bachem via GitGitGadget <gitgitgadget@gmail.com> a écrit :
> >
> > From: Thomas Bachem <mail@thomasbachem.com>
> >
> > The "--rebase -f with rebased upstream" test computes its fork point
> > from the reflog of refs/remotes/me/copy, and the entry it needs is
> > the one that the fetch of the test before it wrote. Like every reflog
> > entry the suite writes after test_tick, it is dated 2005, so the
> > first "git reflog expire --all" after that fetch removes it. Pull
> > then finds no fork point and rebases onto the merge head with the
> > merge head as the upstream, and the rewound commits come back as a
> > conflict.
> >
> > Since 452b12c2e0 (builtin/maintenance: use "geometric" strategy by
> > default, 2026-02-24) auto maintenance runs that expiry once the reflog
> > of HEAD holds a hundred entries it would remove, the default of
> > maintenance.reflog-expire.auto. Which run crosses the threshold
> > depends on the entries and maintenance runs before it, so the script
> > passed by chance: a stash topic that no longer runs "git reset" from
> > "stash apply --index" and a rebase topic that runs auto maintenance
> > at the end of "git rebase" together move the expiry between the two
> > tests.
> >
> > Pin the expiry as ea7d894f44 (t34xx: don't expire reflogs where it
> > matters, 2026-02-24) did for the rebase tests. That covers a "git gc"
> > as well, which expires reflogs on its own, where turning off the auto
> > trigger of the reflog-expire task alone would not.
> >
> > Reported-by: Junio C Hamano <gitster@pobox.com>
> > Helped-by: D. Ben Knoble <ben.knoble@gmail.com>
> > Helped-by: Phillip Wood <phillip.wood@dunelm.org.uk>
> > Assisted-by: Claude Fable 5.1
> > Signed-off-by: Thomas Bachem <mail@thomasbachem.com>
> > ---
> >    t5520: don't expire reflogs where it matters
> >
> >    The t5520 failure Junio saw in 'seen' with Ben Knoble's stash series,
> >    bisected by Ben to tb/rerere-lock-grace and taken apart in the thread:
> >    https://lore.kernel.org/git/a59c4225-f093-4001-b77a-2083dfecce6e@gmail.com/
>
> Junio, if it’s simpler for you this way: I’ll just pick this patch into my series rather than wait for it to appear in seen and recreate my topic on master + it.
I've confirmed this changes fixes the test interaction between our two topics.
Previous: Ben KnobleNext: Junio C Hamano
Message 3 of 14 in “t5520: don't expire reflogs where it matters”
  1. t5520: don't expire reflogs where it mattersThomas Bachem via GitGitGadget, Sep 28, 2026
  2. Ben KnobleSep 28, 2026
  3. D. Ben KnobleSep 29, 2026
  4. Junio C HamanoSep 29, 2026
  5. Junio C HamanoSep 29, 2026
  6. D. Ben KnobleSep 29, 2026
  7. Junio C HamanoSep 30, 2026
  8. t5520: don't expire reflogs where it mattersThomas Bachem via GitGitGadget, Sep 29, 2026
  9. Phillip WoodSep 30, 2026
  10. Thomas BachemOct 1, 2026
  11. t5520: don't expire reflogs where it mattersThomas Bachem via GitGitGadget, Oct 1, 2026
  12. Phillip WoodOct 1, 2026
  13. Thomas BachemOct 2, 2026
  14. Junio C HamanoOct 2, 2026

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.