Backup EnginebackupEngine
Docs/Desktop Agent/Cleanup on Delete

Cleanup on Delete

When you remove a backup set, the cleanup dialog lets you choose what other artefacts (uploaded data, diagnostic logs, report history) to wipe alongside it.

Why a Dialog?

Pre-1.11.8, deleting a backup set removed only the local set record. The uploaded chunks, the diagnostic-runs log files on the local disk, and the server-side report history were all left in place. That suited some users (“remove the schedule, keep the data”) and frustrated others (“I'm done with this — wipe everything”). v1.11.8 turns deletion into a three-way decision instead of an all-or-nothing one.

The Three Checkboxes

  • Also delete uploaded backup data — wipes every chunk + manifest at every destination this set is configured for. CANNOT BE UNDONE — restores from this set become impossible. Default OFF (destructive option, must be explicitly checked).
  • Also delete diagnostic logs on this machine — the per-run text files written under <appdata>/Backup Engine/diagnostic-runs/<setId>-*.log. Cosmetic; deleting them frees a few MB of disk. Default ON.
  • Also delete report history (server-side) — every entry in the Reports tab for this set. Default OFF (preserves audit history; the Reports tab still shows the rows even after the set is gone).

⚠ Warning

Checking “delete uploaded backup data” turns the action button red and adds an explicit warning panel inside the dialog — there is no undo. If you uncheck it and just want a clean local state, the chunks remain at the destination and a future re-creation of the set will dedup against them automatically.

Walk-through

  • On the Backup tab (Files) or Server Backup tab, click the Delete button on the set you want to remove.
  • The "Delete <set name>?" dialog appears with three checkboxes (defaults: data OFF, logs ON, reports OFF).
  • Tick the boxes for whichever artefacts you want to wipe.
  • Click "Delete" (or "Delete + wipe data" if you ticked the destructive option).
  • A snackbar reports what was actually removed: e.g. "Removed set + 3 log file(s) + 412 report(s)".

What Each Checkbox Actually Does

In code, removeBackupSetWithCleanup runs roughly this sequence
for each destination configured for the set:
  list keys with prefix users/<userId>/sets/<setId>/
  delete each chunk + manifest key

if delete_diagnostic_logs:
  glob <appdata>/Backup Engine/diagnostic-runs/<setId>-*.log
  unlink each match

if delete_reports:
  DELETE /functions/v1/reports?backup_set_id=<setId>
  (server-side: deletes every backup_reports row for this set)

ALWAYS:
  delete the local backup_sets row + scheduler_lock
  notifyListeners()

ℹ Note

The reports DELETE was extended in v1.11.8 to accept ?backup_set_id= for bulk delete — previously it only deleted single rows by ?id=.

Recovering After You Wipe Data by Mistake

If you ticked “delete uploaded backup data” the chunks at every destination are gone. We do not retain a server-side trash bucket — the destination is the source of truth and a delete is a delete. If you have a copy of the backup at a second destination (the multi-destination feature), you can recreate the set pointing at the surviving destination and restores work normally.

⚠ Warning

This is one of the strongest arguments for multi-destination backup sets. A second destination (cloud + local, or two clouds) means a destructive action against one is recoverable from the other. See Multi-Destination Backup.