github marcpope/borgbackupserver v2.25.0

latest releases: v2.25.2, v2.25.1
10 hours ago

Bug Fixes

  • Stall detection — Fixed a structural bug where stall detection never fired during running jobs because the agent's main loop was blocked. The heartbeat channel now carries stall signals and can kill a hung borg process. Configurable timeout under Settings → Agent, default 2 hours. (#117)
  • Dashboard storage mismatch — Repo size_bytes is now refreshed after prune and archive delete, so the dashboard matches the client detail page without needing to visit it first (#118)
  • Imported repos show 0 filescatalog_sync now reads nfiles from borg info during import. Existing repos with 0 file counts are auto-backfilled from ClickHouse on next page view (#115)
  • Repo name sanitization on import — Import now sanitizes names the same way as create, preventing leading slashes and special characters (#114)
  • Same-path rename — Renaming /homehome no longer fails with "target already exists" (#114)
  • False "update failed" — PHP-FPM restart failure no longer aborts the update script (#93)
  • Agent offline severity — Downgraded from critical/error to warning (#111)

New Features

  • Report frequency — Users can choose daily or weekly report emails with a day-of-week picker (#120)
  • Log page client filter — Dropdown to filter log entries by client alongside the existing level filter
  • Log retention — Server log auto-pruned at 30 days, backup jobs at 90 days
  • Stall timeout setting — Configurable under Settings → Agent (10 min – 24 hours, default 2 hours)

Agent

  • bbs-agent v2.24.3
    • Heartbeat thread now processes stall detection and cancel signals from the server
    • Stalled borg processes are killed automatically when the server detects no progress
    • Cancel via UI now works even when borg is completely frozen (relayed through heartbeat)

Agent Update Safety

v2.24.10 included the self-recovery wrapper (bbs-agent-start.sh) and syntax validation. Agents bricked by the Python 3.4 incident need a one-time manual fix (re-run the install script from the BBS dashboard). After that, the wrapper prevents this class of failure permanently.

Don't miss a new borgbackupserver release

NewReleases is sending notifications on new releases.