git@vger.kernel.org list mirror (unofficial, one of many)
 help / color / Atom feed
* Commit graph chains with no corresponding files?
@ 2020-06-29 22:07 Jonathan Tan
  2020-06-30  1:51 ` Derrick Stolee
  0 siblings, 1 reply; 2+ messages in thread
From: Jonathan Tan @ 2020-06-29 22:07 UTC (permalink / raw)
  Cc: git, stolee, Jonathan Tan

At $DAYJOB, a few people have reported "warning: unable to find all
commit-graph files" warnings. Their commit-graph-chain files have a few
lines, but they only have one commit graph file with very few commits. I
suspected something happening during fetch, because (as far as I know) a
fetch may cause an incremental commit graph to be written, but I ran a
fetch on a large repository myself and didn't run into this problem.

Has anyone ran into this problem before, and know how to reproduce?

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: Commit graph chains with no corresponding files?
  2020-06-29 22:07 Commit graph chains with no corresponding files? Jonathan Tan
@ 2020-06-30  1:51 ` Derrick Stolee
  0 siblings, 0 replies; 2+ messages in thread
From: Derrick Stolee @ 2020-06-30  1:51 UTC (permalink / raw)
  To: Jonathan Tan; +Cc: git

On 6/29/2020 6:07 PM, Jonathan Tan wrote:
> At $DAYJOB, a few people have reported "warning: unable to find all
> commit-graph files" warnings. Their commit-graph-chain files have a few
> lines, but they only have one commit graph file with very few commits. I
> suspected something happening during fetch, because (as far as I know) a
> fetch may cause an incremental commit graph to be written, but I ran a
> fetch on a large repository myself and didn't run into this problem.
> 
> Has anyone ran into this problem before, and know how to reproduce?

The incremental commit-graph code deletes any commit-graph files
that do not appear in the chain. I believe this is done by comparing
the contents of the ".git/objects/info/commit-graphs/" directory to
the contents of the chain file.

These appear to be case-sensitive, full-path comparisons.

It is _possible_ that something like a case switch or a symlink
could be causing a problem here. That's where I would look on
the affected systems.

Likely the full-path comparison in expire_commit_graphs() should
be dropped in favor of local filename comparisons. A case-
sensitive match is less likely to be important here since Git
is writing the paths itself and should get the proper case back
from the directory listing.

Thanks,
-Stolee


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, back to index

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-06-29 22:07 Commit graph chains with no corresponding files? Jonathan Tan
2020-06-30  1:51 ` Derrick Stolee

git@vger.kernel.org list mirror (unofficial, one of many)

Archives are clonable:
	git clone --mirror https://public-inbox.org/git
	git clone --mirror http://ou63pmih66umazou.onion/git
	git clone --mirror http://czquwvybam4bgbro.onion/git
	git clone --mirror http://hjrcffqmbrq6wope.onion/git

Example config snippet for mirrors

Newsgroups are available over NNTP:
	nntp://news.public-inbox.org/inbox.comp.version-control.git
	nntp://ou63pmih66umazou.onion/inbox.comp.version-control.git
	nntp://czquwvybam4bgbro.onion/inbox.comp.version-control.git
	nntp://hjrcffqmbrq6wope.onion/inbox.comp.version-control.git
	nntp://news.gmane.io/gmane.comp.version-control.git

 note: .onion URLs require Tor: https://www.torproject.org/

AGPL code for this site: git clone https://public-inbox.org/public-inbox.git