all lists on lists.proxmox.com
 help / color / mirror / Atom feed
* [pbs-devel] [PATCH v2 0/4] Locking and rustdoc improvements
@ 2020-10-15 10:49 Stefan Reiter
  2020-10-15 10:49 ` [pbs-devel] [PATCH v2 proxmox-backup 1/4] gc: avoid race between phase1 and forget/prune Stefan Reiter
                   ` (3 more replies)
  0 siblings, 4 replies; 11+ messages in thread
From: Stefan Reiter @ 2020-10-15 10:49 UTC (permalink / raw)
  To: pbs-devel

Getting our locking into better shape, now with at least 10% more flocks/mutexes
and 14% fewer bugs! *

Order now, and you will even receive an updated documentation providing lots of
detail on how said locking actually works!

* terms and conditions may apply


With these patches applied, all interactions displayed in the table in patch 11
resolve fine in theory, in practice I couldn't trigger any of the known races we
had previously anymore either. Extra thourough review/testing still appreciated,
locking is hard...

v2:
* Drop applied patches
* Use lock file and update_manifest method for manifest
* Don't hold manifest lock across verify
* Drop Error.context() from path 1, use File::open directly instead
* Update docs for v2 changes


proxmox-backup: Stefan Reiter (4):
  gc: avoid race between phase1 and forget/prune
  datastore: add manifest locking
  rustdoc: add crate level doc
  rustdoc: overhaul backup rustdoc and add locking table

 src/api2/admin/datastore.rs    |   8 +-
 src/api2/backup/environment.rs |  13 +--
 src/backup.rs                  | 199 ++++++++++++++++++++-------------
 src/backup/datastore.rs        | 105 ++++++++++++++---
 src/backup/manifest.rs         |   1 +
 src/backup/verify.rs           |   9 +-
 src/lib.rs                     |   5 +
 7 files changed, 229 insertions(+), 111 deletions(-)

-- 
2.20.1




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

end of thread, other threads:[~2020-10-16  7:48 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-10-15 10:49 [pbs-devel] [PATCH v2 0/4] Locking and rustdoc improvements Stefan Reiter
2020-10-15 10:49 ` [pbs-devel] [PATCH v2 proxmox-backup 1/4] gc: avoid race between phase1 and forget/prune Stefan Reiter
2020-10-16  6:26   ` Dietmar Maurer
2020-10-15 10:49 ` [pbs-devel] [PATCH v2 proxmox-backup 2/4] datastore: add manifest locking Stefan Reiter
2020-10-16  6:33   ` Dietmar Maurer
2020-10-16  7:37     ` Dietmar Maurer
2020-10-16  7:39   ` [pbs-devel] applied: " Dietmar Maurer
2020-10-15 10:49 ` [pbs-devel] [PATCH v2 proxmox-backup 3/4] rustdoc: add crate level doc Stefan Reiter
2020-10-16  7:47   ` [pbs-devel] applied: " Dietmar Maurer
2020-10-15 10:49 ` [pbs-devel] [PATCH v2 proxmox-backup 4/4] rustdoc: overhaul backup rustdoc and add locking table Stefan Reiter
2020-10-16  7:47   ` [pbs-devel] applied: " Dietmar Maurer

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