[pbs-devel] [PATCH v4 pxar proxmox-backup 0/3] fix fuse mount performance for split archives

Christian Ebner c.ebner at proxmox.com
Wed Jun 12 15:17:10 CEST 2024


Fuse mounts for split pxar archives currently greatly suffer from the
consistency check between metadata and payload data archives, as
these happen already during decoding of the payload reference entry
in the metadata archive. By moving this check to the content reader
instantiation, the performance can be improved significantly, as now
the payload data chunks only need to be fetched and decoded when
actually accessing the file payloads.

Changes since version 3:
- fix missing adaption to tests for already applied patches
- move ContentRange to accessor
- move payload header check to FileContentsImpl new method, make it private
- drop unsafe from `open_contents_at_range`

Changes since version 2:
- Make helper and ContentRange pub(crate) only
- Fix typo in commit message
- Move incorrectly squashed cargo fmt patch into own patch

Changes since version 1:
- Add previously missing check when accessing contents via the accessor
  instead of the decoder.
- Add missing context and refactor file entry extraction branch in pxar
  extract according to suggestions

pxar:

Christian Ebner (2):
  tests: adapt tests to decoder interface changes
  accessor: adapt and restrict contents access

 src/accessor/aio.rs  | 16 ++++++-----
 src/accessor/mod.rs  | 68 ++++++++++++++++++++++++++++++++------------
 src/accessor/sync.rs | 16 ++++++-----
 tests/compat.rs      |  1 +
 tests/simple/fs.rs   |  2 +-
 5 files changed, 70 insertions(+), 33 deletions(-)

proxmox-backup:

Christian Ebner (1):
  client: pxar: fix fuse mount performance for split archives

 pbs-client/src/pxar/extract.rs | 62 ++++++++++++++++------------------
 pbs-pxar-fuse/src/lib.rs       | 19 ++++++-----
 src/api2/tape/restore.rs       |  2 +-
 3 files changed, 41 insertions(+), 42 deletions(-)

-- 
2.39.2





More information about the pbs-devel mailing list