mirror of
https://git.proxmox.com/git/proxmox-backup
synced 2025-04-28 14:37:35 +00:00

to avoid issues when removing a group or snapshot directory where two threads hold a lock to the same directory, move locking to the tmpfs backed '/run' directory. also adds double stat'ing to make it possible to remove locks without certain race condition issues. this new mechanism is only employed when we can be sure, that a reboot has occured so that all processes are using the new locking mechanism. otherwise, two separate process could assume they have exclusive rights to a group or snapshot. bumps the rust version to 1.81 so we can use `std::fs::exists` without issue. Signed-off-by: Shannon Sterz <s.sterz@proxmox.com> Acked-by: Wolfgang Bumiller <w.bumiller@proxmox.com> [TL: drop unused format_err import] Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
48 lines
1.2 KiB
TOML
48 lines
1.2 KiB
TOML
[package]
|
|
name = "pbs-datastore"
|
|
version = "0.1.0"
|
|
authors.workspace = true
|
|
edition.workspace = true
|
|
description = "low level pbs data storage access"
|
|
rust-version.workspace = true
|
|
|
|
[dependencies]
|
|
anyhow.workspace = true
|
|
base64.workspace = true
|
|
crc32fast.workspace = true
|
|
endian_trait.workspace = true
|
|
futures.workspace = true
|
|
hex = { workspace = true, features = [ "serde" ] }
|
|
libc.workspace = true
|
|
log.workspace = true
|
|
nix.workspace = true
|
|
openssl.workspace = true
|
|
serde.workspace = true
|
|
serde_json.workspace = true
|
|
tokio = { workspace = true, features = [] }
|
|
tracing.workspace = true
|
|
walkdir.workspace = true
|
|
zstd.workspace = true
|
|
zstd-safe.workspace = true
|
|
|
|
pathpatterns.workspace = true
|
|
pxar.workspace = true
|
|
|
|
proxmox-borrow.workspace = true
|
|
proxmox-human-byte.workspace = true
|
|
proxmox-io.workspace = true
|
|
proxmox-lang.workspace=true
|
|
proxmox-schema = { workspace = true, features = [ "api-macro" ] }
|
|
proxmox-serde = { workspace = true, features = [ "serde_json" ] }
|
|
proxmox-sys.workspace = true
|
|
proxmox-systemd.workspace = true
|
|
proxmox-time.workspace = true
|
|
proxmox-uuid.workspace = true
|
|
proxmox-worker-task.workspace = true
|
|
|
|
pbs-api-types.workspace = true
|
|
pbs-buildcfg.workspace = true
|
|
pbs-config.workspace = true
|
|
pbs-key-config.workspace = true
|
|
pbs-tools.workspace = true
|