all lists on lists.proxmox.com
 help / color / mirror / Atom feed
* [pbs-devel] [PATCH proxmox-backup 1/2] proxy: fix error handling in prune scheduling
@ 2020-09-24 13:52 Dominik Csapak
  2020-09-24 13:52 ` [pbs-devel] [PATCH proxmox-backup 2/2] use jobstate mechanism for verify/garbage_collection schedules Dominik Csapak
  2020-09-24 14:01 ` [pbs-devel] [PATCH proxmox-backup 1/2] proxy: fix error handling in prune scheduling Stefan Reiter
  0 siblings, 2 replies; 4+ messages in thread
From: Dominik Csapak @ 2020-09-24 13:52 UTC (permalink / raw)
  To: pbs-devel

we rely on the jobstate handling to write the error of the worker
into its state file, but we used '?' here in a block which does not
return the error to the block, but to the function/closure instead

so if a prune job failed because of such an '?', we did not write
into the statefile and got a wrong state there

instead execute the code in a closure where the error gets returned
correctly

in the future, we can use 'try blocks' (currently not in stable)

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
---
 src/bin/proxmox-backup-proxy.rs | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/bin/proxmox-backup-proxy.rs b/src/bin/proxmox-backup-proxy.rs
index 8a6dfe36..96001214 100644
--- a/src/bin/proxmox-backup-proxy.rs
+++ b/src/bin/proxmox-backup-proxy.rs
@@ -434,7 +434,7 @@ async fn schedule_datastore_prune() {
 
                 job.start(&worker.upid().to_string())?;
 
-                let result = {
+                let result = (|| {
 
                     worker.log(format!("Starting datastore prune on store \"{}\"", store));
                     worker.log(format!("task triggered by schedule '{}'", event_str));
@@ -463,7 +463,7 @@ async fn schedule_datastore_prune() {
                         }
                     }
                     Ok(())
-                };
+                })();
 
                 let status = worker.create_state(&result);
 
-- 
2.20.1





^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2020-09-24 14:14 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-09-24 13:52 [pbs-devel] [PATCH proxmox-backup 1/2] proxy: fix error handling in prune scheduling Dominik Csapak
2020-09-24 13:52 ` [pbs-devel] [PATCH proxmox-backup 2/2] use jobstate mechanism for verify/garbage_collection schedules Dominik Csapak
2020-09-24 14:01 ` [pbs-devel] [PATCH proxmox-backup 1/2] proxy: fix error handling in prune scheduling Stefan Reiter
2020-09-24 14:04   ` Dominik Csapak

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