[pbs-devel] [PATCH v4 proxmox-backup 00/11] fix: #3847 pipe from STDIN to proxmox-backup-client

Robert Obkircher r.obkircher at proxmox.com
Fri Jan 23 16:37:13 CET 2026


Add support for commands like:
    ssh host cmd | proxmox-backup-client backup data.img:/dev/stdin
    proxmox-backup-client backup a.img:<(mysqldump) b.img:<(pgdump)

Changes since v3:

>From feedback:
- remove "fix" prefix from commits and ensure they all build
- preserve optional size in BackupEnvironment instead of updating it
- combine public methods of writer and remove Arc<ChunkStore>
- tests: use tmpdir, better names, additional asserts

New:
- use u64 instead of usize for content size
- centralize size computation and improve overflow checks
- mmap entire file to support larger page sizes
  - I'm working on separate patches to fix the Readers 
    (for #7244 - Support 16k page size)


Robert Obkircher (11):
  datastore: support writing fidx files of unknown size
  datastore: remove Arc<ChunkStore> from FixedIndexWriter
  datastore: test FixedIndexWriter
  api: backup: make fixed index file size optional
  api: verify fixed index writer size on close
  fix #3847: client: support fifo pipe inputs for images
  client: treat minus sign as stdin
  datastore: combine public FixedIndexWriter methods into add_chunk.
  datastore: use u64 instead of usize for fidx writer content size
  datastore: compute fidx file size with overflow checks
  datastore: support writing fidx files on systems with larger page size

 pbs-client/src/backup_writer.rs   |  38 ++-
 pbs-datastore/src/datastore.rs    |  14 +-
 pbs-datastore/src/fixed_index.rs  | 448 ++++++++++++++++++++++++++----
 proxmox-backup-client/src/main.rs |  37 ++-
 src/api2/backup/environment.rs    |  33 ++-
 src/api2/backup/mod.rs            |   4 +-
 src/server/push.rs                |  11 +-
 7 files changed, 471 insertions(+), 114 deletions(-)

-- 
2.47.3





More information about the pbs-devel mailing list