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

Re: BUG: commit-reach.c:66: bad generation skip

From
Derrick Stolee <stolee@gmail.com>
Date
Feb 10, 2021, 12:24 UTC
Message-ID
<962a2abc-6352-4d19-c39f-29f3c744f861@gmail.com>
In-Reply-To
<CA+2K_KqEzH7XmrHXd0Vniu+tBQpFwFnYPyzoj-kMhyN2NnoZFQ@mail.gmail.com>
On 2/10/2021 7:18 AM, Filippo Valsorda wrote:
Show 13 quoted lines
> On Mon, Feb 8, 2021 at 3:26 AM Derrick Stolee <stolee@gmail.com> wrote:
>> _This_ is interesting. I haven't heard of this problem happening
>> in a released version of Git.
>>
>> I'm CC'ing Jonathan Nieder who recently saw this happening, but that
>> was on a newer version than 2.30.0 with a topic that is not part
>> of 2.30.0. But maybe the version shipped internally is versioned
>> without extra information on top of the latest tag? (I see your
>> @google.com email, which makes me think you have an internal version.)
> 
> Ah, the issue indeed first showed up as I was using the internal
> version. I then installed mainline 2.30.0 to check that it reproduced
> on the same local repository before reporting a bug.

The mainline does have the BUG() statement, but it's really reflecting bad data in the commit-graph file. That data was written by the internal version and was not reset until you rewrote the file.

Show 24 quoted lines
>> To better understand your situation, could you please run the
>> following commands?
>>
>>         git config --get-regexp graph
>>         git config features.experimental
>>
>> I'm specifically looking for values of fetch.writeCommitGraph and
>> gc.writeCommitGraph.
> 
> fetch.writecommitgraph is enabled on the internal version.
> 
> $ git version
> git version 2.30.0.478.g8a0d178c01-goog
> $ git config --get-regexp graph
> fetch.writecommitgraph true
> $ git config features.experimental
> $ ~/homebrew/bin/git version
> git version 2.30.0
> $ ~/homebrew/bin/git config --get-regexp graph
> $ ~/homebrew/bin/git config features.experimental
> 
> I zipped up the repository and the worktree before running gc, so I can
> run other commands for you if you need, but unfortunately I can't share
> the archive, as it fetched from a private branch with security fixes.

Thanks, but let me know if it reproduces again. The bug should be fixed in ds/commit-graph-genno-fix [1], and I think the Google internal release has been rolled back until that branch is included.

[1] https://github.com/gitster/git/commits/ds/commit-graph-genno-fix

Thanks, -Stolee

Previous: Filippo ValsordaNext: Junio C Hamano
Message 5 of 6 in “BUG: commit-reach.c:66: bad generation skip”
  1. Filippo ValsordaFeb 7, 2021
  2. Filippo ValsordaFeb 7, 2021
  3. Derrick StoleeFeb 8, 2021
  4. Filippo ValsordaFeb 10, 2021
  5. Derrick StoleeFeb 10, 2021
  6. Junio C HamanoFeb 10, 2021

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.