Re: Testsuite failure on s390x and sparc64 after 6840fe9ee2
- From
Patrick Steinhardt <ps@pks.im>
- Date
- Mar 28, 2025, 09:29 UTC
- Message-ID
- <Z-Zr7BZL1UGqVxKu@pks.im>
- In-Reply-To
- <Z-R_Zmr6kxCPLm-O@teonanacatl.net>
On Wed, Mar 26, 2025 at 06:27:50PM -0400, Todd Zullinger wrote:
Show 30 quoted lines
> 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 sizeIt 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