Hello,
I recently needed to restore a Calibre metadata.db file from backup to Box. It has been failing and I cannot seem to repair the DB no matter what I do.
First failure:
Duplicati.Library.Interface.UserInformationException: Found 6 files that are missing from the remote storage, please run repair
at Duplicati.Library.Main.Operation.FilelistProcessor.VerifyRemoteList(BackendManager backend, Options options, LocalDatabase database, IBackendWriter log, IEnumerable`1 protectedFiles)
at Duplicati.Library.Main.Operation.RestoreHandler.DoRun(LocalDatabase dbparent, IFilter filter, RestoreResults result)
at Duplicati.Library.Main.Operation.RestoreHandler.Run(String[] paths, IFilter filter)
at Duplicati.Library.Main.Controller.<>c__DisplayClass15_0.<Restore>b__0(RestoreResults result)
at Duplicati.Library.Main.Controller.RunAction[T](T result, String[]& paths, IFilter& filter, Action`1 method)
at Duplicati.Library.Main.Controller.Restore(String[] paths, IFilter filter)
at Duplicati.Server.Runner.Run(IRunnerData data, Boolean fromQueue)
After running repair:
Duplicati.Library.Interface.UserInformationException: The backup storage destination is missing data files. You can either enable `--rebuild-missing-dblock-files` or run the purge command to remove these files. The following files are missing: duplicati-bf298ba138577419583d857dc46c06e23.dblock.zip.aes
at Duplicati.Library.Main.Operation.RepairHandler.RunRepairRemote()
at Duplicati.Library.Main.Operation.RepairHandler.Run(IFilter filter)
at Duplicati.Library.Main.Controller.RunAction[T](T result, String[]& paths, IFilter& filter, Action`1 method)
at Duplicati.Library.Main.Controller.Repair(IFilter filter)
at Duplicati.Server.Runner.Run(IRunnerData data, Boolean fromQueue)
After enabling --rebuild-missing-dblock-files and trying to restore again:
Duplicati.Library.Interface.UserInformationException: Found 1 files that are missing from the remote storage, please run repair
at Duplicati.Library.Main.Operation.FilelistProcessor.VerifyRemoteList(BackendManager backend, Options options, LocalDatabase database, IBackendWriter log, IEnumerable`1 protectedFiles)
at Duplicati.Library.Main.Operation.RestoreHandler.DoRun(LocalDatabase dbparent, IFilter filter, RestoreResults result)
at Duplicati.Library.Main.Operation.RestoreHandler.Run(String[] paths, IFilter filter)
at Duplicati.Library.Main.Controller.<>c__DisplayClass15_0.<Restore>b__0(RestoreResults result)
at Duplicati.Library.Main.Controller.RunAction[T](T result, String[]& paths, IFilter& filter, Action`1 method)
at Duplicati.Library.Main.Controller.Restore(String[] paths, IFilter filter)
at Duplicati.Server.Runner.Run(IRunnerData data, Boolean fromQueue)
After running repair again:
Jan 12, 2023 1:46 PM: This may be fixed by deleting the filesets and running repair again
Jan 12, 2023 1:46 PM: Repair cannot acquire 20 required blocks for volume duplicati-bf298ba138577419583d857dc46c06e23.dblock.zip.aes, which are required by the following filesets:
But it doesn’t reveal the filesets. Then this:
Jan 12, 2023 1:46 PM: Failed to perform cleanup for missing file: duplicati-bf298ba138577419583d857dc46c06e23.dblock.zip.aes, message: Repair not possible, missing 20 blocks. If you want to continue working with the database, you can use the "list-broken-files" and "purge-broken-files" commands to purge the missing data from the database and the remote storage.
I ran the following command from CLI and got the result shown:
PS C:\Program Files\Duplicati 2> .\Duplicati.CommandLine.exe list-broken-files box://Backups/Library?authid=****
Enter encryption passphrase: *********
ErrorID: DatabaseDoesNotExist
Database file does not exist: C:\Users\Marc\AppData\Local\Duplicati\CMWRVSWIZA.sqlite
Please advise.