git/list[1] front-page[2] threads[3] people[4] search[5] about
 

RE: [ANNOUNCE] Git v2.21.0-rc1 (NonStop Results) - Good News

From
Randall S. Becker <rsbecker@nexbridge.com>
Date
Feb 16, 2019, 16:51 UTC
Message-ID
<001201d4c617$de429540$9ac7bfc0$@nexbridge.com>
On February 16, 2019 3:27, Max Kirillov wrote:
Show 13 quoted lines
> On Fri, Feb 15, 2019 at 04:13:15PM -0500, Randall S. Becker wrote:
> > Sadly, the fix does not change the results. In fact, it makes the hang
> > far more likely. Subtest 6,7,8 fails here, at close()
> 
> Correct, I did not expect it to help, it was for the other issue.
> 
> As for the hang issue, from your another message it seems to me that perl
> waiting correctly, there are really child process which do not exit.
> 
> What you could try is
> https://public-inbox.org/git/20181124093719.10705-1-max@max630.net/
> (I'm not sure it would not conflict by now), this would remove dependency
> between tests. If it helps it would be very valuable information.

Good news. This patch does seem to do the trick. I wonder whether this fixes the Azure build also.

I have run the test under the following conditions: Run 1 (system idle): Pass Run 2 (system idle): Pass Run 3 (system idle): Pass Run 4 (system idle): Pass Run 5 (system idle): Pass Run 6 (system mild load, heavy file system): Pass Run 7 (system mild load, moderate file system load - git fetch): Pass Run 8 (heavy system load, heavy file system load): Pass Run 9 (--verbose, heavy system load, heavy file system load): Pass Run 10 (GIT_TRACE=true, --verbose, heavy system load, heavy file system load): Pass Run 11 (very heavy system load, very heavy file system load): Pass

The current condition of the code is (the generate_zero_bytes delete was previously removed so can be ignored for the patch):

diff --git a/t/t5562-http-backend-content-length.sh
b/t/t5562-http-backend-content-length.sh
index bbadde2c6e..f0f425b2cf 100755
--- a/t/t5562-http-backend-content-length.sh
+++ b/t/t5562-http-backend-content-length.sh
@@ -8,12 +8,12 @@ test_lazy_prereq GZIP 'gzip --version'
 verify_http_result() {
        # some fatal errors still produce status 200
        # so check if there is the error message
-       if grep 'fatal:' act.err
+       if grep 'fatal:' act.err.$test_count
        then
                return 1
        fi

-       if ! grep "Status" act.out >act
+       if ! grep "Status" act.out.$test_count >act
        then
                printf "Status: 200 OK\r\n" >act
        fi
@@ -33,7 +33,7 @@ test_http_env() {
                REQUEST_METHOD=POST \
                "$PERL_PATH" \
                "$TEST_DIRECTORY"/t5562/invoke-with-content-length.pl \
-                   "$request_body" git http-backend >act.out 2>act.err
+                   "$request_body" git http-backend >act.out.$test_count
2>act.err.$test_count
 }

 ssize_b100dots() {
@@ -143,14 +143,14 @@ test_expect_success GZIP 'push gzipped empty' '

 test_expect_success 'CONTENT_LENGTH overflow ssite_t' '
        NOT_FIT_IN_SSIZE=$(ssize_b100dots) &&
-       generate_zero_bytes infinity  | env \
+       env \
                CONTENT_TYPE=application/x-git-upload-pack-request \
                QUERY_STRING=/repo.git/git-upload-pack \
                PATH_TRANSLATED="$PWD"/.git/git-upload-pack \
                GIT_HTTP_EXPORT_ALL=TRUE \
                REQUEST_METHOD=POST \
                CONTENT_LENGTH="$NOT_FIT_IN_SSIZE" \
-               git http-backend >/dev/null 2>err &&
+               git http-backend </dev/null >/dev/null 2>err &&
        grep "fatal:.*CONTENT_LENGTH" err
 '

@@ -161,7 +161,7 @@ test_expect_success 'empty CONTENT_LENGTH' '
                GIT_HTTP_EXPORT_ALL=TRUE \
                REQUEST_METHOD=GET \
                CONTENT_LENGTH="" \
-               git http-backend <empty_body >act.out 2>act.err &&
+               git http-backend <empty_body >act.out.$test_count
2>act.err.$test_count &&
        verify_http_result "200 OK"
 '
Next: Randall S. Becker
Message 1 of 16 in “RE: [ANNOUNCE] Git v2.21.0-rc1 (NonStop Results) - Good News”
  1. Randall S. BeckerFeb 16, 2019
  2. Randall S. BeckerFeb 16, 2019
  3. Junio C HamanoFeb 16, 2019
  4. Randall S. BeckerFeb 16, 2019
  5. Junio C HamanoFeb 16, 2019
  6. Junio C HamanoFeb 18, 2019
  7. Randall S. BeckerFeb 18, 2019
  8. Johannes SchindelinFeb 19, 2019
  9. Johannes SchindelinFeb 18, 2019
  10. Johannes SchindelinFeb 18, 2019
  11. Max KirillovFeb 19, 2019
  12. Max KirillovFeb 19, 2019
  13. Randall S. BeckerFeb 19, 2019
  14. Johannes SchindelinFeb 20, 2019
  15. Max KirillovFeb 18, 2019
  16. Randall S. BeckerFeb 18, 2019

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.