On Tue, Apr 14, 2020 at 01:22:45PM -0700, Elijah Newren wrote: > Hi, > > I was building a version of git for internal use, and thought I'd try > turning on features.experimental to get more testing of it. The > following test error in the testsuite scared me, though: > > t5537.9 (fetch --update-shallow): > > ... > + git fetch --update-shallow ../shallow/.git refs/heads/*:refs/remotes/shallow/* > remote: Enumerating objects: 18, done. > remote: Counting objects: 100% (18/18), done. > remote: Compressing objects: 100% (6/6), done. > remote: Total 16 (delta 0), reused 6 (delta 0), pack-reused 0 > Unpacking objects: 100% (16/16), 1.16 KiB | 1.17 MiB/s, done. > From ../shallow/ > * [new branch] master -> shallow/master > * [new tag] heavy-tag -> heavy-tag > * [new tag] light-tag -> light-tag > error: Could not read ac67d3021b4319951fb176469d7732e6914530c5 > error: Could not read ac67d3021b4319951fb176469d7732e6914530c5 > error: Could not read ac67d3021b4319951fb176469d7732e6914530c5 > fatal: unable to parse commit ac67d3021b4319951fb176469d7732e6914530c5 > > Passing -c fetch.writeCommitGraph=false to the fetch command in that > test makes it pass. This failure makes sense, since taking the reachability closure over the ref tips will fail in shallow clones of repositories that have more than one commit. I wonder if fetch should be taught to avoid generating commit-graphs (and ignore 'fetch.writeCommitGraph') when in a shallow clone. > There were also a couple other tests that failed with > features.experimental=true (in t5500), but those weren't scary -- they > were just checking exact want/have lines and features.experimental is > intended to change those. This test from t5537 was the only one that > showed some unexpected fatal error. > > Thanks, > Elijah Thanks, Taylor