all lists on lists.proxmox.com
 help / color / mirror / Atom feed
From: Thomas Lamprecht <t.lamprecht@proxmox.com>
To: Proxmox Backup Server development discussion
	<pbs-devel@lists.proxmox.com>,
	Christian Ebner <c.ebner@proxmox.com>
Subject: Re: [pbs-devel] [PATCH proxmox{, -backup} v3 0/4] s3: extend config by provider-quirks and client options by feature list
Date: Tue, 5 Aug 2025 08:15:42 +0200	[thread overview]
Message-ID: <b672dd22-c8db-41f4-b539-574886629fd5@proxmox.com> (raw)
In-Reply-To: <eee25f67-54ac-47d1-ad16-78433717be28@proxmox.com>

Am 05.08.25 um 07:58 schrieb Christian Ebner:
> On 8/4/25 10:17 PM, Thomas Lamprecht wrote:
>> Am 04.08.25 um 08:54 schrieb Christian Ebner:
>>> These patches extend the s3 client configuration by the additional
>>> `provider-quirks` enum, allowing to switch to provider specific implementation
>>> details. The provider specific quirks are then mapped to a list of features and
>>> limitations, added to the s3 client options.
>>>
>>> As first use-case, the `If-None-Match` header is not set during put object
>>> requests to Backblaze B2 or Infomaniak object stores, as these fail with an
>>> error with status code 501, therefore chunk uploads will fail.
>>
>> Why not expose the actual quirk (features) directly? Even if we'd like to
>> have specific providers a user can select, that part could be a frontend
>> only feature, and tbh. for starters I'd even skip that, maybe documenting
>> provider to quirks in the PBS wiki might be a good option for now.
>>
>> I'm just a bit wary of locking our backend in to those provider, as there
>> are quite a few of S3 provider, and not all might be here with us forever,
>> and having dozens of providers all mapping just to one or two actual
>> quirks each seems a bit overkill to me.
>> Sorry, I should have taken a closer check earlier to provider quicker
>> feedback.
> 
> The intention was to have it easy for the user to select the required features, therefore the mapping from provider to features.

Yes, I get that, and don't get me wrong, in general it _is_ a nice idea for
the UX. But IMO the backend should not have to care about this, especially
not a relatively low-level and generic S3 client crate. And the only benefit
I can see over a frontend implementation would be that we could adapt the
backend automatically to change in behavior of a provider. But such change is
IMO rather unlikely, as that would be a breaking change on their parts, and if
one provides a new API version we'd also start to version the providers in the
backend, and users might need to update PBS to get the updated provider
profile, instead of being able to enable any of the existing quirks. If we
need a new quirk in general one needs to update in any way, so for that
nothing changes – just to give some more rationale.

That's why I think that the user doesn't gets much value over this being a
front-end only profile once selected on endpoint creation – again, would not
do that now, but could see this as future UX improvement, depending on user
feedback.

> So I do agree, will move this over to only expose the features in the config and the single NoIfNoneMatchHeader in the UI for now (and maybe call them quirks, after all?)

It's a short name and definitively not wrong, so "quirks" works for me.


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

  reply	other threads:[~2025-08-05  6:14 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-08-04  6:53 Christian Ebner
2025-08-04  6:53 ` [pbs-devel] [PATCH proxmox v3 1/2] s3 client: api types: extend client config by optional provider quirks Christian Ebner
2025-08-04  6:53 ` [pbs-devel] [PATCH proxmox v3 2/2] s3 client: extend client options by feature list Christian Ebner
2025-08-04  6:53 ` [pbs-devel] [PATCH proxmox-backup v3 1/2] api: s3 config: allow to update or delete endpoint quirks Christian Ebner
2025-08-04  6:53 ` [pbs-devel] [PATCH proxmox-backup v3 2/2] ui: s3 endpoint: add provider specific quirk selector Christian Ebner
2025-08-04 20:17 ` [pbs-devel] [PATCH proxmox{, -backup} v3 0/4] s3: extend config by provider-quirks and client options by feature list Thomas Lamprecht
2025-08-05  5:58   ` Christian Ebner
2025-08-05  6:15     ` Thomas Lamprecht [this message]
2025-08-05 10:52 ` [pbs-devel] superseded: " 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=b672dd22-c8db-41f4-b539-574886629fd5@proxmox.com \
    --to=t.lamprecht@proxmox.com \
    --cc=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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.
Service provided by Proxmox Server Solutions GmbH | Privacy | Legal