public inbox for pbs-devel@lists.proxmox.com
 help / color / mirror / Atom feed
From: Christian Ebner <c.ebner@proxmox.com>
To: pbs-devel@lists.proxmox.com
Subject: [pbs-devel] [PATCH proxmox{, -backup} v2 0/7] fix #6665: never mark chunks as bad on s3 client fetch error
Date: Mon, 25 Aug 2025 15:10:00 +0200	[thread overview]
Message-ID: <20250825131007.626777-1-c.ebner@proxmox.com> (raw)

This patch series fixes an issue with chunks being incorrectly marked
as bad in case of s3 client fetch errors. In that case, only increase
the error counter and log the error, but leave the chunk as is.

To increase robusteness, implement a retry logic for all transient s3
client request errors with exponential backoff time. Further,
unconditionally increase the get object request timeout from currently
1 minute to 30 minutes, to greatly reduce possible timeouts on low
download bandwidth connections.

Changes since version 1 (thanks @Wolfgang for offlist feedback):
- Change timeout value to be independent of request retries
- Adapt backoff time to be exponential, increasing initial value to 1 second
- Do not increase tcp keepalive idle time, and rename const to avoid confusion

proxmox:

Christian Ebner (6):
  proxmox-http: add method to share full body as contiguous bytes
  s3-client: drop non-ambiguous mention of chunks in error message
  s3-client: fix unintended match statement being an expression
  s3-client: bump s3 request timeout from 1 minute to 30 minutes
  s3-client: add retry logic for transient client errors
  s3-client: use better fitting name for TCP idle time

 proxmox-http/src/body.rs        |  8 ++++
 proxmox-s3-client/src/client.rs | 74 +++++++++++++++++++++++----------
 2 files changed, 61 insertions(+), 21 deletions(-)


proxmox-backup:

Christian Ebner (1):
  fix #6665: never rename chunks on s3 client fetch errors

 src/backup/verify.rs | 35 +++++++++++++++++++++++------------
 1 file changed, 23 insertions(+), 12 deletions(-)


Summary over all repositories:
  3 files changed, 84 insertions(+), 33 deletions(-)

-- 
Generated by git-murpp 0.8.1


_______________________________________________
pbs-devel mailing list
pbs-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pbs-devel


             reply	other threads:[~2025-08-25 13:10 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-08-25 13:10 Christian Ebner [this message]
2025-08-25 13:10 ` [pbs-devel] [PATCH proxmox v2 1/6] proxmox-http: add method to share full body as contiguous bytes Christian Ebner
2025-08-25 13:10 ` [pbs-devel] [PATCH proxmox v2 2/6] s3-client: drop non-ambiguous mention of chunks in error message Christian Ebner
2025-08-25 13:10 ` [pbs-devel] [PATCH proxmox v2 3/6] s3-client: fix unintended match statement being an expression Christian Ebner
2025-08-25 13:10 ` [pbs-devel] [PATCH proxmox v2 4/6] s3-client: bump s3 request timeout from 1 minute to 30 minutes Christian Ebner
2025-08-25 13:10 ` [pbs-devel] [PATCH proxmox v2 5/6] s3-client: add retry logic for transient client errors Christian Ebner
2025-08-25 13:10 ` [pbs-devel] [PATCH proxmox v2 6/6] s3-client: use better fitting name for TCP idle time Christian Ebner
2025-08-25 13:10 ` [pbs-devel] [PATCH proxmox-backup v2 1/1] fix #6665: never rename chunks on s3 client fetch errors Christian Ebner

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=20250825131007.626777-1-c.ebner@proxmox.com \
    --to=c.ebner@proxmox.com \
    --cc=pbs-devel@lists.proxmox.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
Service provided by Proxmox Server Solutions GmbH | Privacy | Legal