From: "Daniel P. Berrangé" <berrange@redhat.com>
To: Stefan Hajnoczi <stefanha@redhat.com>
Cc: thuth@redhat.com, "Philippe Mathieu-Daudé" <f4bug@amsat.org>,
"Cleber Rosa" <crosa@redhat.com>,
"Wainer dos Santos Moschetta" <wainersm@redhat.com>,
"Beraldo Leal" <bleal@redhat.com>,
qemu-devel@nongnu.org
Subject: Re: Inscrutable CI jobs (avocado & Travis s390 check-tcg)
Date: Fri, 23 Sep 2022 08:28:07 +0100 [thread overview]
Message-ID: <Yy1gB1KB3YSIUcoC@redhat.com> (raw)
In-Reply-To: <YyyxrNp+5XrmLi1Y@fedora>
On Thu, Sep 22, 2022 at 03:04:12PM -0400, Stefan Hajnoczi wrote:
> QEMU's avocado and Travis s390x check-tcg CI jobs fail often and I don't
> know why. I think it's due to timeouts but maybe there is something
> buried in the logs that I missed.
>
> I waste time skimming through logs when merging qemu.git pull requests
> and electricity is wasted on tests that don't produce useful pass/fail
> output.
>
> Here are two recent examples:
> https://gitlab.com/qemu-project/qemu/-/jobs/3070754718
> https://app.travis-ci.com/gitlab/qemu-project/qemu/jobs/583629583
>
> If there are real test failures then the test output needs to be
> improved so people can identify failures.
>
> If the tests are timing out then they need to be split up and/or reduced
> in duration. BTW, if it's a timeout, why are we using an internal
> timeout instead of letting CI mark the job as timed out?
>
> Any other ideas for improving these CI jobs?
The avocado job there does show the errors, but the summary at the
end leaves something to be desired. At first glance it looked like
everything passed because it says "ERROR 0" and that's what caught
my eye. Took a long time to notice the 'INTERRUPT 5' bit is actually
just an error state too. I don't understand why it has to have so
many different ways of saying the same thing:
RESULTS : PASS 14 | ERROR 0 | FAIL 0 | SKIP 37 | WARN 0 | INTERRUPT 5 | CANCEL 136
"ERROR", "FAIL" and "INTERRUPT" are all just the same thing
"SKIP" and "CANCEL" are just the same thing
I'm sure there was some reason for these different terms, but IMHO they
are actively unhelpful.
For example I see no justiable reason for the choice of SKIP vs CANCEL
in these two messages:
(173/192) tests/avocado/virtiofs_submounts.py:VirtiofsSubmountsTest.test_pre_launch_set_up: SKIP: sudo -n required, but "sudo -n true" failed: [Errno 2] No such file or directory: 'sudo'
(183/192) tests/avocado/x86_cpu_model_versions.py:X86CPUModelAliases.test_4_1_alias: CANCEL: No QEMU binary defined or found in the build tree (0.00 s)
It would be clearer to understand the summary as:
RESULTS: PASS 14 | ERROR 5 | SKIP 173 | WARN 0
I'd also like to see it repeat the error messages for the failed
tests at the end, so you don't have to search back up through the
huge log to find them.
On the TCG tests we see
imeout --foreground 90 /home/travis/build/qemu-project/qemu/build/qemu-s390x noexec > noexec.out
make[1]: *** [../Makefile.target:158: run-noexec] Error 1
make[1]: Leaving directory '/home/travis/build/qemu-project/qemu/build/tests/tcg/s390x-linux-user'
make: *** [/home/travis/build/qemu-project/qemu/tests/Makefile.include:60: run-tcg-tests-s390x-linux-user] Error 2
I presume that indicates the 'noexec' test failed, but we have zero
info. Perhaps noexec.out contains the useful info ? We don't know as
we can't access the file. If a test system is storing results in a
file that needs to be cat'd to stderr on failure, for it to be
visible in CI.
With regards,
Daniel
--
|: https://berrange.com -o- https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org -o- https://fstop138.berrange.com :|
|: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|
next prev parent reply other threads:[~2022-09-23 7:34 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-09-22 19:04 Inscrutable CI jobs (avocado & Travis s390 check-tcg) Stefan Hajnoczi
2022-09-23 7:28 ` Daniel P. Berrangé [this message]
2022-09-23 7:47 ` Thomas Huth
2022-09-23 10:08 ` Alex Bennée
2022-09-29 13:01 ` Stefan Hajnoczi
2022-09-29 13:08 ` Daniel P. Berrangé
2022-09-29 13:16 ` Thomas Huth
2022-09-29 13:24 ` Peter Maydell
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=Yy1gB1KB3YSIUcoC@redhat.com \
--to=berrange@redhat.com \
--cc=bleal@redhat.com \
--cc=crosa@redhat.com \
--cc=f4bug@amsat.org \
--cc=qemu-devel@nongnu.org \
--cc=stefanha@redhat.com \
--cc=thuth@redhat.com \
--cc=wainersm@redhat.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).