Also Cc'ing Stolee's current mail address instead of the GitHub one.
On Fri, Mar 28, 2025 at 10:29:16AM +0100, Patrick Steinhardt wrote:
Show 83 quoted lines
> On Wed, Mar 26, 2025 at 06:27:50PM -0400, Todd Zullinger wrote:
> > John Paul Adrian Glaubitz wrote:
> > > the following commit:
> > >
> > > commit 6840fe9ee29ab51ffd7d924c624dc62da22c50bf
> > > Author: Derrick Stolee <derrickstolee@github.com>
> > > Date: Mon Feb 3 17:11:05 2025 +0000
> > >
> > > backfill: add --min-batch-size=<n> option
> > >
> > > Users may want to specify a minimum batch size for their needs. This is only
> > > a minimum: the path-walk API provides a list of OIDs that correspond to the
> > > same path, and thus it is optimal to allow delta compression across those
> > > objects in a single server request.
> > >
> > > We could consider limiting the request to have a maximum batch size in the
> > > future. For now, we let the path-walk API batches determine the
> > > boundaries.
> > > (...)
> > >
> > > broke the testsuite on s390x [1] and sparc64 [2]. The following test fails:
> > >
> > > not ok 4 - do partial clone 2, backfill min batch size
> > >
> > > CC'ing the author which is Derrick Stolee.
> >
> > I reported this during the rc period. I didn't hear back on
> > it, but hopefully your message will arrive at a more
> > convenient time. :)
> >
> > https://lore.kernel.org/git/Z8HW6petWuMRWSXf@teonanacatl.net/
>
> Copy-pasting the test logs from that mail:
>
> expecting success of 5620.4 'do partial clone 2, backfill min batch size':
> git clone --no-checkout --filter=blob:none \
> --single-branch --branch=main \
> "file://$(pwd)/srv.bare" backfill2 &&
> GIT_TRACE2_EVENT="$(pwd)/batch-trace" git \
> -C backfill2 backfill --min-batch-size=20 &&
> # Batches were used
> test_trace2_data promisor fetch_count 20 <batch-trace >matches &&
> test_line_count = 2 matches &&
> test_trace2_data promisor fetch_count 8 <batch-trace &&
> # No more missing objects!
> git -C backfill2 rev-list --quiet --objects --missing=print HEAD >revs2 &&
> test_line_count = 0 revs2
> +++ pwd
> ++ git clone --no-checkout --filter=blob:none --single-branch --branch=main 'file:///tmp/git-t.sYdo/trash directory.t5620-backfill/srv.bare' backfill2
> Cloning into 'backfill2'...
> +++ pwd
> ++ GIT_TRACE2_EVENT='/tmp/git-t.sYdo/trash directory.t5620-backfill/batch-trace'
> ++ git -C backfill2 backfill --min-batch-size=20
> ++ test_trace2_data promisor fetch_count 20
> ++ grep -e '"category":"promisor","key":"fetch_count","value":"20"'
> error: last command exited with $?=1
> not ok 4 - do partial clone 2, backfill min batch size
>
> It would be nice to learn what the file contains instead of the expected
> string, which might give us a bit more of a hint what's wrong. You can
> for example apply the following patch:
>
> diff --git a/t/test-lib-functions.sh b/t/test-lib-functions.sh
> index 79377bc0fc2..197494cd28c 100644
> --- a/t/test-lib-functions.sh
> +++ b/t/test-lib-functions.sh
> @@ -1975,7 +1975,7 @@ test_region () {
> # GIT_TRACE2_EVENT="$(pwd)/trace.txt" git pack-objects ... &&
> # test_trace2_data pack-objects reused N <trace2.txt
> test_trace2_data () {
> - grep -e '"category":"'"$1"'","key":"'"$2"'","value":"'"$3"'"'
> + test_grep -e '"category":"'"$1"'","key":"'"$2"'","value":"'"$3"'"'
> }
>
> # Given a GIT_TRACE2_EVENT log over stdin, writes to stdout a list of URLs
>
> If you then re-run the test with `-ix` we should end up printing the
> contents of that non-matching file.
>
> Thanks!
>
> Patrick
>