Re: 2.29.0.rc0.windows.1: Duplicate commit id error message when fetching

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 07.10.2020 23:06, Jeff King wrote:
> 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 ...

> 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



[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux