From: Jeff King <peff@peff.net>
To: "SZEDER Gábor" <szeder.dev@gmail.com>
Cc: Junio C Hamano <gitster@pobox.com>, git@vger.kernel.org
Subject: Re: [PATCH] test-lib: make '--stress' more bisect-friendly
Date: Fri, 8 Feb 2019 11:47:33 -0500 [thread overview]
Message-ID: <20190208164732.GA23461@sigill.intra.peff.net> (raw)
In-Reply-To: <20190208115045.13256-1-szeder.dev@gmail.com>
On Fri, Feb 08, 2019 at 12:50:45PM +0100, SZEDER Gábor wrote:
> - Make it exit with failure if a failure is found.
>
> - Add the '--stress-limit=<N>' option to repeat the test script
> at most N times in each of the parallel jobs, and exit with
> success when the limit is reached.
> [...]
>
> This is a case when an external stress script works better, as it can
> easily check commits in the past... if someone has such a script,
> that is.
Heh, I literally just implemented this kind of max-count in my own
"stress" script[1] to handle this recent t0025 testing. So certainly I
think it is a good idea.
Picking an <N> is tough. Too low and you get a false negative, too high
and you can wait forever, especially if the script is long. But I don't
think there's any real way to auto-scale it, except by seeing a few of
the failing cases and watching how long they take.
> t/README | 5 +++++
> t/test-lib.sh | 18 ++++++++++++++++--
> 2 files changed, 21 insertions(+), 2 deletions(-)
Patch looks good. A few observations:
> @@ -237,8 +248,10 @@ then
> exit 1
> ' TERM INT
>
> - cnt=0
> - while ! test -e "$stressfail"
> + cnt=1
> + while ! test -e "$stressfail" &&
> + { test -z "$stress_limit" ||
> + test $cnt -le $stress_limit ; }
> do
> $TEST_SHELL_PATH "$0" "$@" >"$TEST_RESULTS_BASE.stress-$job_nr.out" 2>&1 &
> test_pid=$!
You switch to 1-indexing the counts here. I think that makes sense,
since otherwise --stress-limit=300 would end at "1.299", etc.
> @@ -261,6 +274,7 @@ then
>
> if test -f "$stressfail"
> then
> + stress_exit=1
> echo "Log(s) of failed test run(s):"
> for failed_job_nr in $(sort -n "$stressfail")
> do
I think I'd argue that this missing stress_exit is a bug in the original
script, and somewhat orthogonal to the limit counter. But I don't think
it's worth the trouble to split it out (and certainly the theme of "now
you can run this via bisect" unifies the two changes).
-Peff
next prev parent reply other threads:[~2019-02-08 16:47 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-02-08 11:50 [PATCH] test-lib: make '--stress' more bisect-friendly SZEDER Gábor
2019-02-08 16:47 ` Jeff King [this message]
2019-02-08 16:49 ` Jeff King
2019-02-08 18:33 ` SZEDER Gábor
2019-02-08 19:12 ` Jeff King
2019-02-08 18:23 ` SZEDER Gábor
2019-02-08 19:11 ` Jeff King
2019-02-11 19:58 ` [PATCH] test-lib: fix non-portable pattern bracket expressions SZEDER Gábor
2019-02-11 22:29 ` Junio C Hamano
2019-02-11 23:46 ` Jeff King
2019-02-12 0:30 ` SZEDER Gábor
2019-02-12 0:34 ` Jeff King
2019-02-12 10:47 ` Carlo Arenas
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20190208164732.GA23461@sigill.intra.peff.net \
--to=peff@peff.net \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=szeder.dev@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).