Fixes
MySQL Restore Performance (#67)
- Extract only requested databases —
borg extractnow targets specific dump files instead of the entire dump directory which caused unnecessary overhead and disk I/O. - Safety backup before replace — Before overwriting a database during a replace restore, the agent dumps the current DB to
dump_dir/dbname_pre_restore.sql.gzas a safety net. - Accurate job timing — Agent now reports running status immediately when the restore begins (during borg extract), so Started At and Duration reflect actual elapsed time.
Path Resolution Fix
getLocalRepoPath()now parses the directory name from the SSH path URL instead of relying on$repo['name'], fixing prune, compact, catalog, restore, and S3 sync failures after repository renames.