From: Fiona Ebner <f.ebner@proxmox.com>
To: Proxmox Backup Server development discussion
<pbs-devel@lists.proxmox.com>,
Christian Ebner <c.ebner@proxmox.com>
Subject: Re: [pbs-devel] [PATCH v4 proxmox-backup 0/5] handle reader client disconnects
Date: Wed, 9 Apr 2025 14:53:06 +0200 [thread overview]
Message-ID: <0a791209-cbc2-4ab7-8d29-3f5c49c86f63@proxmox.com> (raw)
In-Reply-To: <20250408125839.196668-1-c.ebner@proxmox.com>
Am 08.04.25 um 14:58 schrieb Christian Ebner:
> These patches attempt to improve the server side error handling for
> backukp reader client disconnects.
>
> During regular operation, the server currently cannot distinguish a
> disconnect because of error from a disconnect because of finished
> operation. This leaves behind a task in failed state, which is
> unexpected and might cause confusion [0].
>
> To improve error handling, follow the approach taken for the backup
> writer tasks, letting the client signal it has successfully finished
> via an api call and catch the disconnect error for that case.
>
> The signaling of messages/warnings in case of client side aborts
> triggered by the user as suggested by Fabian has not been
> implemented, as that is currently not transparently handled by the
> client (only handled by BackupReader's Drop impl), therefore seemed
> out of scope for this patch series.
>
> changes since version 3:
> - rebased onto current master
>
> Reported in the community forum:
> [0] https://forum.proxmox.com/threads/158306/
>
While I wasn't able to reproduce the exact issue as reported in the
forum thread I was able to run into a slightly different one by issuing
the following two commands
proxmox-backup-client backup --repository 10.10.100.180:bigone
ex.pxar:example
proxmox-backup-client backup --repository 10.10.100.180:bigone
ex.pxar:example --change-detection-mode metadata
resulting in a backup reader task that had to read no chunks (and that
was the correct timing for me to trigger the race I guess):
> 2025-04-09T14:36:21+02:00: starting new backup reader datastore 'bigone': "/mnt/datastore/bigone"
> 2025-04-09T14:36:21+02:00: protocol upgrade done
> 2025-04-09T14:36:21+02:00: TASK ERROR: connection error: connection reset: connection reset
While testing that the refactor for "proxmox-backup-debug diff" did not
mess anything up I ran into a completely different issue, namely, that
it doesn't work for split archives:
> root@pbs1:~# proxmox-backup-debug diff archive ct/131/2025-02-11T12:40:25Z ct/131/2025-04-09T11:29:09Z root.pxar --repository localhost:bigone
> Error: Unable to open dynamic index "/mnt/datastore/bigone/ct/131/2025-04-09T11:29:09Z/root.pxar.didx" - No such file or directory (os error 2)
> root@pbs1:~# ls /mnt/datastore/bigone/ct/131/2025-04-09T11:29:09Z
> client.log.blob index.json.blob pct.conf.blob root.mpxar.didx root.ppxar.didx
Another issue I found is that using a patched client but unpatched
server will result in a client error:
> Error: Path '/finish' not found.
and non-zero exit code. Can the client check whether the server supports
the new endpoint and handle this gracefully?
_______________________________________________
pbs-devel mailing list
pbs-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pbs-devel
next prev parent reply other threads:[~2025-04-09 12:53 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-04-08 12:58 Christian Ebner
2025-04-08 12:58 ` [pbs-devel] [PATCH v4 proxmox-backup 1/5] client: reader: drop dead code Christian Ebner
2025-04-08 12:58 ` [pbs-devel] [PATCH v4 proxmox-backup 2/5] backup debug: diff: refactor backup reader creation Christian Ebner
2025-04-08 12:58 ` [pbs-devel] [PATCH v4 proxmox-backup 3/5] api: reader: handle reader client disconnects Christian Ebner
2025-04-08 12:58 ` [pbs-devel] [PATCH v4 proxmox-backup 4/5] client: reader: add finish method to signal client state to server Christian Ebner
2025-04-09 13:53 ` Max Carrara
2025-04-09 14:27 ` Christian Ebner
2025-04-08 12:58 ` [pbs-devel] [PATCH v4 proxmox-backup 5/5] client: backup reader: call finish before dropping backup readers Christian Ebner
2025-04-09 12:53 ` Fiona Ebner [this message]
2025-04-09 12:55 ` [pbs-devel] [PATCH v4 proxmox-backup 0/5] handle reader client disconnects Fiona Ebner
2025-04-09 13:20 ` Thomas Lamprecht
2025-04-09 13:35 ` Fiona Ebner
2025-04-09 13:25 ` 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=0a791209-cbc2-4ab7-8d29-3f5c49c86f63@proxmox.com \
--to=f.ebner@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 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