Re: 2.29.0.rc0.windows.1: Duplicate commit id error message when fetching
- From
Thomas Braun <thomas.braun@virtuell-zuhause.de>
- Date
- Oct 8, 2020, 09:52 UTC
- Message-ID
- <329d91ed-097f-38ac-f1b1-73b4d57ce8ad@virtuell-zuhause.de>
- In-Reply-To
- <20201007210609.GA1984296@coredump.intra.peff.net>
On 07.10.2020 23:06, Jeff King wrote:
Show 21 quoted lines
> On Wed, Oct 07, 2020 at 10:28:36PM +0200, Thomas Braun wrote:
>
>> $ git --version
>> git version 2.29.0.rc0.windows.1
>>
>> Since I upgraded to that version (thanks to dscho for providing these so
>> early) I'm seeing occasionally
>>
>> $ git fetch origin +refs/head/abcd:refs/remotes/origin/abcd
>> fatal: unexpected duplicate commit id
>> 31a13139875bc5f49ddcbd42b4b4d3dc18c16576
>
> That message comes from the commit-graph code:
>
> $ git grep unexpected.duplicate.commit.id '*.c'
> commit-graph.c: die(_("unexpected duplicate commit id %s"),
>
> So presumably it's related to the fetch.writeCommitGraph feature, though
> I thought it was not on by default (for a while it was tied to
> feature.experimental, but I think even that is not true in 2.29). Do you
> have that option set?Yes I do have that set. The error also vanishes if I turn it off via git -c fetch.writeCommitGraph=false ...
Show 7 quoted lines
> The message is in sort_and_scan_merged_commits(), which is trying to > join multiple incremental commit-graph files together. Presumably you > have two such files with the same commit appearing in both. I think we > try to avoid that (by omitting commits from new incrementals that > already appear in another one), but I wonder if there is a race or other > condition that can cause it. In which case this code ought to be more > lenient, and just quietly ignore the duplicate.
Thanks for the explanation. Yes I do have multiple commit graph files.
$ ls -lh objects/info/commit-graphs total 445K -r--r--r-- 1 thomas 197121 123 Oct 8 11:29 commit-graph-chain -r--r--r-- 1 thomas 197121 3.2K Oct 8 11:29 graph-6444f51143e12b3f34c031e60a672d2b29d1c09e.graph -r--r--r-- 1 thomas 197121 434K Oct 8 11:29 graph-6d467862fac6cadecf90c11a054b8883234defec.graph -r--r--r-- 1 thomas 197121 1.9K Oct 8 11:29 graph-6ed4c0bfb0adcc15a7dc58159b3652a23d6d8c14.graph
> Is it possible to share the contents of your .git directory? If not, can > you look in .git/objects/info/ and see if there are multiple > commit-graph files (and if so, possibly share those; they don't contain > any identifying info).
Yes sure, I can share that [1]. Thanks for looking into that.
[1]: http://byte-physics.de/Downloads/dotGitWriteCommitGraphDuplicatedCommitIssue.tar.gz