From: D. Ben Knoble Date: Tue, 29 Sep 2026 11:48:08 GMT Subject: Re: [PATCH] t5520: don't expire reflogs where it matters Message-ID: In-Reply-To: <89E3CD2E-8366-4C5A-B3A4-8F44AC5F89DF@gmail.com> On Mon, Sep 28, 2026 at 4:45 PM Ben Knoble wrote: > > > > Le 28 sept. 2026 à 10:38, Thomas Bachem via GitGitGadget a écrit : > > > > From: Thomas Bachem > > > > 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 > > Helped-by: D. Ben Knoble > > Helped-by: Phillip Wood > > Assisted-by: Claude Fable 5.1 > > Signed-off-by: Thomas Bachem > > --- > > 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.