PBS 4.2 Move groups and namespaces within a datastore for easier backup reorganization

finks

Active Member
Jul 9, 2019
1
0
41
PBS 4.2 introduces a very useful new move feature for backup groups and namespaces. Being able to move backup groups between namespaces directly in PBS is a great improvement, especially for reorganizing datastores, cleaning up namespace structures, or consolidating backup layouts without having to re-upload or recreate backups.

However, the current default behavior appears risky: when the target backup group already exists, the GUI/API defaults to merging the source group into the existing target group.

This can be problematic in real-world PBS environments. Many installations use namespaces to separate different PVE clusters, hosts, customers, departments, or environments. In those setups, identical VMIDs or CTIDs are common and do not necessarily refer to the same guest. For example, vm/100 in namespace cluster-a may be a completely different virtual machine than vm/100 in namespace cluster-b.

If such groups are moved and merged by default, unrelated backup histories can be combined into one backup group. Even if PBS performs technical checks such as owner matching and non-overlapping snapshot timestamps, this does not guarantee that the backups belong to the same VM or CT from a semantic/admin perspective. The result could be confusing, hard to detect later, and potentially dangerous during restore operations.

The move feature itself is excellent and very welcome. The concern is mainly the default behavior and the lack of a safer conflict-handling workflow.

Possible improvements:

  1. Change the GUI default to not merge existing target groups.
  2. If the target group already exists, require an explicit confirmation before merging.
  3. Offer a third option: move the backup group to a new/free VMID or CTID in the target namespace.
  4. Show a clear warning that identical VMIDs/CTIDs across namespaces may represent unrelated guests.
  5. Ideally, display source and target group details before confirming, such as namespace, group ID, owner, snapshot count, and time range.
A safer default workflow could be:

  • If the target group does not exist: move normally.
  • If the target group exists: stop and ask the user what to do.
  • Available choices:
    • cancel
    • merge explicitly
    • choose another free ID
    • enter a custom target ID
This would preserve the power of the new move feature while reducing the risk of accidentally mixing unrelated backup histories.
 
Hey,

with the current default it behaves like sync would currently, that is also the reason it was chosen. Something like a datastore option that allows configuring the default could make sense. What I am not so sure about is offering an option to change the ID of a group, this would mean keeping track of any id changes manually. Also, the base problem is the clashing ids, changing them at PBS would just push the problem down the line.
Either way, could you open an issue for this at [1], that is where we keep track of things like this. Thanks! :)

[1] https://bugzilla.proxmox.com/