git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
From: "SZEDER Gábor" <szeder.dev@gmail.com>
To: Jeff King <peff@peff.net>
Cc: Junio C Hamano <gitster@pobox.com>,
	Git mailing list <git@vger.kernel.org>
Subject: Re: [PATCH v2 3/3] t/lib-httpd: avoid occasional failures when checking access.log
Date: Wed, 11 Jul 2018 19:26:19 +0200	[thread overview]
Message-ID: <CAM0VKjm8V58w=2+Zx+ykrfmOmNDOtPY5HeuFy+mWm_H40UrF1A@mail.gmail.com> (raw)
In-Reply-To: <20180711145730.GB15269@sigill.intra.peff.net>

On Wed, Jul 11, 2018 at 4:57 PM Jeff King <peff@peff.net> wrote:
>
> On Wed, Jul 11, 2018 at 02:56:47PM +0200, SZEDER Gábor wrote:
>
> > +# Requires one argument: the name of a file containing the expected stripped
> > +# access log entries.
> > +check_access_log() {
> > +     sort "$1" >"$1".sorted &&
> > +     strip_access_log >access.log.stripped &&
> > +     sort access.log.stripped >access.log.sorted &&
> > +     if ! test_cmp "$1".sorted access.log.sorted
> > +     then
> > +             test_cmp "$1" access.log.stripped
> > +     fi
> > +}
>
> This will generate output showing both the unsorted and sorted
> differences. Do we want to suppress the sorted ones (e.g., by just using
> "cmp" directly)? I guess it doesn't matter unless there is an actual
> test failure, but I just wonder if it would be confusing to see both.

I have no opinion about this, at all.  I tried it both ways back then,
and didn't find one any better than the other, so I just chose the
simpler-shorter one, i.e. no 2>/dev/null redirection in the condition.

> > diff --git a/t/t5541-http-push-smart.sh b/t/t5541-http-push-smart.sh
> > index 6cd986797d..a481e3989a 100755
> > --- a/t/t5541-http-push-smart.sh
> > +++ b/t/t5541-http-push-smart.sh
> > @@ -43,15 +43,13 @@ test_expect_success 'no empty path components' '
> >       cd "$ROOT_PATH" &&
> >       git clone $HTTPD_URL/smart/test_repo.git/ test_repo_clone &&
> >
> > -     strip_access_log >act &&
> > +     check_access_log exp
> > +'
> >
> > +test_expect_success 'clear access log' '
> >       # Clear the log, so that it does not affect the "used receive-pack
> >       # service" test which reads the log too.
> > -     #
> > -     # We do this before the actual comparison to ensure the log is cleared.
> > -     >"$HTTPD_ROOT_PATH"/access.log &&
> > -
> > -     test_cmp exp act
> > +     >"$HTTPD_ROOT_PATH"/access.log
> >  '
>
> This took some head-scratching, mostly because of the original comment.
> I thought the "before" here was referring to a timing issue (maybe
> because we're talking about timing ;) ).

Heh, I had to do some head-scratching now as well...  That's what I
get for updating the patch, and then waiting almost a month to finish
it up and update the commit message.

> But it is really "make sure that a failed test here does not prevent us
> from doing this cleanup". So the original really should have just
> dropped that comment and added a test_when_finished. Bumping it into a
> separate test as you have here accomplishes the same thing.

After taking a step back, I think this would fit better into the first
patch, wouldn't it?
I will send v3 shortly.

  reply	other threads:[~2018-07-11 17:26 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-06-14 12:31 [RFC PATCH 0/4] Fix occasional test failures in http tests SZEDER Gábor
2018-06-14 12:31 ` [PATCH 1/4] t5541: avoid empty line when truncating access log SZEDER Gábor
2018-06-14 12:31 ` [PATCH 2/4] t/lib-httpd: add the strip_access_log() helper function SZEDER Gábor
2018-06-14 12:31 ` [PATCH 3/4] t/lib-httpd: add minor and patch version to $HTTPD_VERSION SZEDER Gábor
2018-06-14 12:31 ` [RFC PATCH 4/4] t/lib-httpd: sort log based on timestamp to avoid occasional failure SZEDER Gábor
2018-06-14 16:39   ` SZEDER Gábor
2018-06-14 17:53   ` Jeff King
2018-06-14 18:27     ` Junio C Hamano
2018-06-15  6:00       ` Jeff King
2018-07-11 12:53     ` SZEDER Gábor
2018-07-11 14:45       ` Jeff King
2018-06-14 17:15 ` [RFC PATCH 0/4] Fix occasional test failures in http tests Junio C Hamano
2018-06-14 17:56 ` Jeff King
2018-07-11 12:56 ` [PATCH v2 0/3] " SZEDER Gábor
2018-07-11 12:56   ` [PATCH v2 1/3] t5541: avoid empty line when truncating access log SZEDER Gábor
2018-07-11 12:56   ` [PATCH v2 2/3] t/lib-httpd: add the strip_access_log() helper function SZEDER Gábor
2018-07-11 12:56   ` [PATCH v2 3/3] t/lib-httpd: avoid occasional failures when checking access.log SZEDER Gábor
2018-07-11 14:57     ` Jeff King
2018-07-11 17:26       ` SZEDER Gábor [this message]
2018-07-11 17:35         ` Jeff King
2018-07-11 14:58   ` [PATCH v2 0/3] Fix occasional test failures in http tests Jeff King
2018-07-12 12:22   ` [PATCH v3 " SZEDER Gábor
2018-07-12 12:22     ` [PATCH v3 1/3] t5541: clean up truncating access log SZEDER Gábor
2018-07-12 15:56       ` Jeff King
2018-07-12 12:22     ` [PATCH v3 2/3] t/lib-httpd: add the strip_access_log() helper function SZEDER Gábor
2018-07-12 12:22     ` [PATCH v3 3/3] t/lib-httpd: avoid occasional failures when checking access.log SZEDER Gábor

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

  List information: http://vger.kernel.org/majordomo-info.html

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAM0VKjm8V58w=2+Zx+ykrfmOmNDOtPY5HeuFy+mWm_H40UrF1A@mail.gmail.com' \
    --to=szeder.dev@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    --cc=peff@peff.net \
    /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.
Code repositories for project(s) associated with this public inbox

	https://80x24.org/mirrors/git.git

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 read-only IMAP folder(s) and NNTP newsgroup(s).