From: Thomas Huth <thuth@redhat.com>
To: Nicholas Piggin <npiggin@gmail.com>
Cc: "Philippe Mathieu-Daudé" <philmd@linaro.org>,
"Daniel P. Berrangé" <berrange@redhat.com>,
qemu-devel@nongnu.org
Subject: Re: [PATCH 3/3] tests/functional/asset: Add AssetError exception class
Date: Wed, 12 Mar 2025 07:56:41 +0100 [thread overview]
Message-ID: <10656ca0-1822-4505-a164-4e45db84884d@redhat.com> (raw)
In-Reply-To: <20250312051739.938441-4-npiggin@gmail.com>
On 12/03/2025 06.17, Nicholas Piggin wrote:
> Assets are uniquely identified by human-readable-ish url, so make an
> AssetError exception class that prints url with error message.
>
> A property 'transient' is used to capture whether the client may retry
> or try again later, or if it is a serious and likely permanent error.
> This is used to retain the existing behaviour of treating HTTP errors
> other than 404 as 'transient' and not causing precache step to fail.
> Additionally, partial-downloads and stale asset caches that fail to
> resolve after the retry limit are now treated as transient and do not
> cause precache step to fail.
>
> For background: The NetBSD archive is, at the time of writing, failing
> with short transfer. Retrying the fetch at that position (as wget does)
> results in a "503 backend unavailable" error. We would like to get that
> error code directly, but I have not found a way to do that with urllib,
> so treating the short-copy as a transient failure covers that case (and
> seems like a reasonable way to handle it in general).
>
> Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
> ---
> tests/functional/qemu_test/asset.py | 41 ++++++++++++++++++-----------
> 1 file changed, 26 insertions(+), 15 deletions(-)
Reviewed-by: Thomas Huth <thuth@redhat.com>
prev parent reply other threads:[~2025-03-12 6:57 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-03-12 5:17 [PATCH 0/3] tests/functional/asset: improve partial-download handling Nicholas Piggin
2025-03-12 5:17 ` [PATCH 1/3] tests/functional/asset: Fail assert fetch when retries are exceeded Nicholas Piggin
2025-03-12 6:40 ` Thomas Huth
2025-03-12 8:13 ` Daniel P. Berrangé
2025-03-12 5:17 ` [PATCH 2/3] tests/functional/asset: Verify downloaded size Nicholas Piggin
2025-03-12 6:49 ` Thomas Huth
2025-03-12 5:17 ` [PATCH 3/3] tests/functional/asset: Add AssetError exception class Nicholas Piggin
2025-03-12 6:56 ` Thomas Huth [this message]
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=10656ca0-1822-4505-a164-4e45db84884d@redhat.com \
--to=thuth@redhat.com \
--cc=berrange@redhat.com \
--cc=npiggin@gmail.com \
--cc=philmd@linaro.org \
--cc=qemu-devel@nongnu.org \
/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).