Error "Zip archive appears to have a broken Central Record Header" when compacting

I’m currently running 2.0.4.5_beta_2018-11-28.

I’ve been backing up to Azure for a while (several months) and over the past few days, I’ve started getting some weird exceptions thrown by Duplicati when it runs the backup.

The backup will run on its normal schedule and throw this error:

stack trace
System.NullReferenceException: Object reference not set to an instance of an object.
 at SharpCompress.Readers.AbstractReader`2.get_Entry()
 at SharpCompress.Readers.AbstractReader`2.LoadStreamForReading(Stream stream)
 at Duplicati.Library.Compression.FileArchiveZip.LoadEntryTable()
 at Duplicati.Library.Compression.FileArchiveZip.GetEntry(String file)
 at Duplicati.Library.Compression.FileArchiveZip.OpenRead(String file)
 at Duplicati.Library.Main.Volumes.VolumeReaderBase.ReadManifests(Options options)
 at Duplicati.Library.Main.Operation.CompactHandler.DoCompact(LocalDeleteDatabase db, Boolean hasVerifiedBackend, IDbTransaction& transaction, BackendManager sharedBackend)
 at Duplicati.Library.Main.Operation.DeleteHandler.DoRun(LocalDeleteDatabase db, IDbTransaction& transaction, Boolean hasVerifiedBacked, Boolean forceCompact, BackendManager sharedManager)
 at Duplicati.Library.Main.Operation.BackupHandler.CompactIfRequired(BackendManager backend, Int64 lastVolumeSize) at Duplicati.Library.Main.Operation.BackupHandler.<RunAsync>d__19.MoveNext() 
--- End of stack trace from previous location where exception was thrown ---
 at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
 at CoCoL.ChannelExtensions.WaitForTaskOrThrow(Task task)
 at Duplicati.Library.Main.Controller.<>c__DisplayClass13_0.<Backup>b__0(BackupResults result)
 at Duplicati.Library.Main.Controller.RunAction[T](T result, String[]& paths, IFilter& filter, Action`1 method)
 at Duplicati.Library.Main.Controller.Backup(String[] inputsources, IFilter filter)
 at Duplicati.Server.Runner.Run(IRunnerData data, Boolean fromQueue)
log
[Warning-Duplicati.Library.Compression.FileArchiveZip-BrokenCentralHeaderFallback]: Zip archive appears to have a broken Central Record Header, switching to stream mode
System.InvalidOperationException: Cannot determine compressed stream type. Supported Archive Formats: Zip, GZip, Tar, Rar, 7Zip, LZip
 at SharpCompress.Archives.ArchiveFactory.Open(Stream stream, ReaderOptions readerOptions)
 at Duplicati.Library.Compression.FileArchiveZip.get_Archive()
 at Duplicati.Library.Compression.FileArchiveZip.LoadEntryTable()

So, I’ll run the backup again, whereupon it complains that there are missing files:

stack trace
Duplicati.Library.Interface.UserInformationException: Found 7 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, String protectedfile)
 at Duplicati.Library.Main.Operation.BackupHandler.PreBackupVerify(BackendManager backend, String protectedfile)
 at Duplicati.Library.Main.Operation.BackupHandler.<RunAsync>d__19.MoveNext() 
--- End of stack trace from previous location where exception was thrown ---
 at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
 at CoCoL.ChannelExtensions.WaitForTaskOrThrow(Task task)
 at Duplicati.Library.Main.Controller.<>c__DisplayClass13_0.<Backup>b__0(BackupResults result)
 at Duplicati.Library.Main.Controller.RunAction[T](T result, String[]& paths, IFilter& filter, Action`1 method)
 at Duplicati.Library.Main.Controller.Backup(String[] inputsources, IFilter filter)
 at Duplicati.Server.Runner.Run(IRunnerData data, Boolean fromQueue)
log
[Warning-Duplicati.Library.Main.Operation.FilelistProcessor-MissingFile]: Missing file: duplicati-ia846ebfde512437c9b426d068a6e950d.dindex.zip.aes
[Warning-Duplicati.Library.Main.Operation.FilelistProcessor-MissingFile]: Missing file: duplicati-ib5f18426218341c2aeb76d473e9b483b.dindex.zip.aes
[Warning-Duplicati.Library.Main.Operation.FilelistProcessor-MissingFile]: Missing file: duplicati-i8392b9ad3a0b44a3a66e8c191f1730ee.dindex.zip.aes
[Warning-Duplicati.Library.Main.Operation.FilelistProcessor-MissingFile]: Missing file: duplicati-icaec8fcd779e4243a36f6334571f1680.dindex.zip.aes
[Warning-Duplicati.Library.Main.Operation.FilelistProcessor-MissingFile]: Missing file: duplicati-icb9f8c3b272d445f94812066cf00a8f4.dindex.zip.aes
[Warning-Duplicati.Library.Main.Operation.FilelistProcessor-MissingFile]: Missing file: duplicati-i57da8b503c974a708a103b3337eb7a2b.dindex.zip.aes
[Warning-Duplicati.Library.Main.Operation.FilelistProcessor-MissingFile]: Missing file: duplicati-i4ace5f19d3174356b3cf355f36b525fc.dindex.zip.aes

So, I’ll run the repair:

log
[Information-Duplicati.Library.Main.Controller-StartingOperation]: The operation Repair has started
[Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: List - Started: ()
[Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: List - Completed: (16.23 KB)
[Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Started: duplicati-ia846ebfde512437c9b426d068a6e950d.dindex.zip.aes (541 bytes)
[Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Completed: duplicati-ia846ebfde512437c9b426d068a6e950d.dindex.zip.aes (541 bytes)
...

Then I re-run the backup, and everything will succeed…only to repeat in full the next day when the backup runs again.

This scenario has been playing out daily for the past 4 days, and so far I haven’t been able to figure out what’s causing it. Can anyone offer any suggestions?

Thanks.

This is still happening, so I enabled logging to file at the Information level.

file-log
2019-03-24 16:30:00 -07 - [Information-Duplicati.Library.Main.Controller-StartingOperation]: The operation Backup has started
2019-03-24 16:31:34 -07 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: List - Started:  ()
2019-03-24 16:31:41 -07 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: List - Completed:  (16.53 KB)
2019-03-24 16:34:08 -07 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Started: duplicati-b7e25096128894b19bfeaadce8f7d9892.dblock.zip.aes (49.92 MB)
2019-03-24 16:35:48 -07 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Completed: duplicati-b7e25096128894b19bfeaadce8f7d9892.dblock.zip.aes (49.92 MB)
2019-03-24 16:35:48 -07 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Started: duplicati-idb0a1689beb444f987f78077de86e4e8.dindex.zip.aes (257.25 KB)
2019-03-24 16:35:49 -07 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Completed: duplicati-idb0a1689beb444f987f78077de86e4e8.dindex.zip.aes (257.25 KB)
2019-03-24 16:35:49 -07 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Started: duplicati-b3bf9f47fa43c43e0b39ad3b05dcabd90.dblock.zip.aes (3.52 MB)
2019-03-24 16:35:56 -07 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Completed: duplicati-b3bf9f47fa43c43e0b39ad3b05dcabd90.dblock.zip.aes (3.52 MB)
2019-03-24 16:35:56 -07 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Started: duplicati-if6186ebf2c984a449cc990bd3bf047d6.dindex.zip.aes (16.61 KB)
2019-03-24 16:35:57 -07 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Completed: duplicati-if6186ebf2c984a449cc990bd3bf047d6.dindex.zip.aes (16.61 KB)
2019-03-24 16:35:57 -07 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Started: duplicati-20190324T233000Z.dlist.zip.aes (15.72 MB)
2019-03-24 16:36:29 -07 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Completed: duplicati-20190324T233000Z.dlist.zip.aes (15.72 MB)
2019-03-24 16:36:29 -07 - [Information-Duplicati.Library.Main.Operation.DeleteHandler:RetentionPolicy-StartCheck]: Start checking if backups can be removed
2019-03-24 16:36:29 -07 - [Information-Duplicati.Library.Main.Operation.DeleteHandler:RetentionPolicy-FramesAndIntervals]: Time frames and intervals pairs: 30.00:00:00 / Keep all, 365.00:00:00 / 7.00:00:00, Unlimited / 31.00:00:00
2019-03-24 16:36:29 -07 - [Information-Duplicati.Library.Main.Operation.DeleteHandler:RetentionPolicy-BackupList]: Backups to consider: 2019-03-23 16:50:55, 2019-03-23 16:31:07, 2019-03-22 21:51:00, 2019-03-22 16:30:00, 2019-03-21 16:57:02, 2019-03-21 16:30:00, 2019-03-20 20:43:03, 2019-03-20 20:28:22, 2019-03-20 16:30:00, 2019-03-19 16:30:00, 2019-03-18 16:30:00, 2019-03-17 17:13:42, 2019-03-17 16:30:00, 2019-03-16 16:57:39, 2019-03-16 16:39:55, 2019-03-16 16:00:00, 2019-03-15 16:00:00, 2019-03-14 22:58:53, 2019-03-14 21:15:11, 2019-03-14 16:00:00, 2019-03-13 16:00:00, 2019-03-13 05:46:01, 2019-03-12 08:02:37, 2019-03-09 16:00:00, 2019-03-08 16:00:00, 2019-03-07 16:00:00, 2019-03-06 16:00:00, 2019-03-05 16:00:00, 2019-03-04 16:00:00, 2019-03-03 16:21:59, 2019-03-02 16:00:00, 2019-03-01 16:00:00, 2019-02-28 16:00:00, 2019-02-27 16:00:00, 2019-02-26 16:00:00, 2019-02-25 16:00:00, 2019-02-24 16:17:02, 2019-02-23 17:03:30, 2019-02-22 16:00:00, 2019-02-16 16:13:39, 2019-02-08 16:16:02, 2019-01-31 16:16:18, 2019-01-23 16:16:29, 2019-01-15 16:14:19, 2019-01-08 16:07:59, 2018-12-31 16:19:32, 2018-12-24 16:14:56, 2018-12-16 17:48:28, 2018-12-08 22:25:53, 2018-12-01 17:58:32, 2018-11-24 16:11:03, 2018-11-17 16:08:34, 2018-11-09 21:33:46, 2018-10-30 16:08:14, 2018-10-23 16:07:57, 2018-10-15 23:57:12
2019-03-24 16:36:29 -07 - [Information-Duplicati.Library.Main.Operation.DeleteHandler:RetentionPolicy-BackupsToDelete]: Backups outside of all time frames and thus getting deleted: 
2019-03-24 16:36:29 -07 - [Information-Duplicati.Library.Main.Operation.DeleteHandler:RetentionPolicy-AllBackupsToDelete]: All backups to delete: 2019-02-22 16:00:00
2019-03-24 16:36:29 -07 - [Information-Duplicati.Library.Main.Operation.DeleteHandler-DeleteRemoteFileset]: Deleting 1 remote fileset(s) ...
2019-03-24 16:36:50 -07 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Delete - Started: duplicati-20190223T000000Z.dlist.zip.aes (10.58 MB)
2019-03-24 16:36:51 -07 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Delete - Completed: duplicati-20190223T000000Z.dlist.zip.aes (10.58 MB)
2019-03-24 16:36:51 -07 - [Information-Duplicati.Library.Main.Operation.DeleteHandler-DeleteResults]: Deleted 1 remote fileset(s)
2019-03-24 16:38:03 -07 - [Information-Duplicati.Library.Main.Database.LocalDeleteDatabase-CompactReason]: Compacting because there are 73.16 MB in small volumes and the volume size is 50.00 MB
2019-03-24 16:38:08 -07 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Get - Started: duplicati-bbcc3351f2eb2471081ee10eb7229889d.dblock.zip.aes (49.94 MB)
2019-03-24 16:38:15 -07 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Get - Completed: duplicati-bbcc3351f2eb2471081ee10eb7229889d.dblock.zip.aes (49.94 MB)
2019-03-24 16:38:15 -07 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Get - Started: duplicati-b45f9d51d98b54bb296522b4644d334d3.dblock.zip.aes (46.82 MB)
2019-03-24 16:38:21 -07 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Get - Completed: duplicati-b45f9d51d98b54bb296522b4644d334d3.dblock.zip.aes (46.82 MB)
2019-03-24 16:38:21 -07 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Get - Started: duplicati-bb038054effd044c89df565fe35700b23.dblock.zip.aes (49.96 MB)
2019-03-24 16:38:27 -07 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Get - Completed: duplicati-bb038054effd044c89df565fe35700b23.dblock.zip.aes (49.96 MB)
2019-03-24 16:38:27 -07 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Get - Started: duplicati-bbecf5d809e9040619e919b9052059653.dblock.zip.aes (44.37 MB)
2019-03-24 16:38:33 -07 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Get - Completed: duplicati-bbecf5d809e9040619e919b9052059653.dblock.zip.aes (44.37 MB)
2019-03-24 16:38:33 -07 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Get - Started: duplicati-ba05a2d989cd0434eb5006a50287e4aef.dblock.zip.aes (8.00 MB)
2019-03-24 16:38:34 -07 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Get - Completed: duplicati-ba05a2d989cd0434eb5006a50287e4aef.dblock.zip.aes (8.00 MB)
2019-03-24 16:38:34 -07 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Get - Started: duplicati-b1ed12e0289f34889921c109400244ebf.dblock.zip.aes (301 bytes)
2019-03-24 16:38:34 -07 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Get - Completed: duplicati-b1ed12e0289f34889921c109400244ebf.dblock.zip.aes (301 bytes)
2019-03-24 16:38:35 -07 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Started: duplicati-beb5952bc15204f808221a97e46ca9977.dblock.zip.aes (50.00 MB)
2019-03-24 16:40:17 -07 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Completed: duplicati-beb5952bc15204f808221a97e46ca9977.dblock.zip.aes (50.00 MB)
2019-03-24 16:40:17 -07 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Started: duplicati-i7011601c9d684552914894357242475f.dindex.zip.aes (37.11 KB)
2019-03-24 16:40:17 -07 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Completed: duplicati-i7011601c9d684552914894357242475f.dindex.zip.aes (37.11 KB)
2019-03-24 16:40:17 -07 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Delete - Started: duplicati-bbcc3351f2eb2471081ee10eb7229889d.dblock.zip.aes (49.94 MB)
2019-03-24 16:40:17 -07 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Delete - Completed: duplicati-bbcc3351f2eb2471081ee10eb7229889d.dblock.zip.aes (49.94 MB)
2019-03-24 16:40:17 -07 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Delete - Started: duplicati-iea548b59ced744c9a0bb8d7479b61905.dindex.zip.aes (207.64 KB)
2019-03-24 16:40:17 -07 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Delete - Completed: duplicati-iea548b59ced744c9a0bb8d7479b61905.dindex.zip.aes (207.64 KB)
2019-03-24 16:40:17 -07 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Delete - Started: duplicati-b45f9d51d98b54bb296522b4644d334d3.dblock.zip.aes (46.82 MB)
2019-03-24 16:40:17 -07 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Delete - Completed: duplicati-b45f9d51d98b54bb296522b4644d334d3.dblock.zip.aes (46.82 MB)
2019-03-24 16:40:17 -07 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Delete - Started: duplicati-i06af7fe38f6c4be0859a0b749a48b7eb.dindex.zip.aes (244.83 KB)
2019-03-24 16:40:17 -07 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Delete - Completed: duplicati-i06af7fe38f6c4be0859a0b749a48b7eb.dindex.zip.aes (244.83 KB)
2019-03-24 16:40:17 -07 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Delete - Started: duplicati-bb038054effd044c89df565fe35700b23.dblock.zip.aes (49.96 MB)
2019-03-24 16:40:17 -07 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Delete - Completed: duplicati-bb038054effd044c89df565fe35700b23.dblock.zip.aes (49.96 MB)
2019-03-24 16:40:17 -07 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Delete - Started: duplicati-i2f1f0cf0dd3a4b40916e7e82f7acecad.dindex.zip.aes (99.93 KB)
2019-03-24 16:40:17 -07 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Delete - Completed: duplicati-i2f1f0cf0dd3a4b40916e7e82f7acecad.dindex.zip.aes (99.93 KB)
2019-03-24 16:40:17 -07 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Delete - Started: duplicati-bbecf5d809e9040619e919b9052059653.dblock.zip.aes (44.37 MB)
2019-03-24 16:40:17 -07 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Delete - Completed: duplicati-bbecf5d809e9040619e919b9052059653.dblock.zip.aes (44.37 MB)
2019-03-24 16:40:17 -07 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Delete - Started: duplicati-i78fc9815e1924ab193f3b15f76ee17fa.dindex.zip.aes (114.45 KB)
2019-03-24 16:40:18 -07 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Delete - Completed: duplicati-i78fc9815e1924ab193f3b15f76ee17fa.dindex.zip.aes (114.45 KB)
2019-03-24 16:40:20 -07 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Get - Started: duplicati-befdc947e41864b24af6c0b4ddbe79d07.dblock.zip.aes (6.35 MB)
2019-03-24 16:40:20 -07 - [Warning-Duplicati.Library.Compression.FileArchiveZip-BrokenCentralHeaderFallback]: Zip archive appears to have a broken Central Record Header, switching to stream mode
System.InvalidOperationException: Cannot determine compressed stream type. Supported Archive Formats: Zip, GZip, Tar, Rar, 7Zip, LZip
   at SharpCompress.Archives.ArchiveFactory.Open(Stream stream, ReaderOptions readerOptions)
   at Duplicati.Library.Compression.FileArchiveZip.get_Archive()
   at Duplicati.Library.Compression.FileArchiveZip.LoadEntryTable()
2019-03-24 16:40:21 -07 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Get - Completed: duplicati-befdc947e41864b24af6c0b4ddbe79d07.dblock.zip.aes (6.35 MB)
2019-03-24 16:40:22 -07 - [Error-Duplicati.Library.Main.Operation.BackupHandler-FatalError]: Fatal error
System.NullReferenceException: Object reference not set to an instance of an object.
   at SharpCompress.Readers.AbstractReader`2.get_Entry()
   at SharpCompress.Readers.AbstractReader`2.LoadStreamForReading(Stream stream)
   at Duplicati.Library.Compression.FileArchiveZip.LoadEntryTable()
   at Duplicati.Library.Compression.FileArchiveZip.GetEntry(String file)
   at Duplicati.Library.Compression.FileArchiveZip.OpenRead(String file)
   at Duplicati.Library.Main.Volumes.VolumeReaderBase.ReadManifests(Options options)
   at Duplicati.Library.Main.Operation.CompactHandler.DoCompact(LocalDeleteDatabase db, Boolean hasVerifiedBackend, IDbTransaction& transaction, BackendManager sharedBackend)
   at Duplicati.Library.Main.Operation.DeleteHandler.DoRun(LocalDeleteDatabase db, IDbTransaction& transaction, Boolean hasVerifiedBacked, Boolean forceCompact, BackendManager sharedManager)
   at Duplicati.Library.Main.Operation.BackupHandler.CompactIfRequired(BackendManager backend, Int64 lastVolumeSize)
   at Duplicati.Library.Main.Operation.BackupHandler.<RunAsync>d__19.MoveNext()

If anyone has any ideas what might be causing this, it’d be much appreciated.

I think I’ve narrowed this down to a particular dblock that is downloaded during the compact operation; specifically, duplicati-befdc947e41864b24af6c0b4ddbe79d07.dblock.zip.aes.

I started looking for other mentions of the “broken Central Record Header” error, and I found this issue, but the zip file in question in my backup is only 6.35MB, not more than 4GiB. I also manually downloaded the file from the destination and was able to successfully decrypt and extract it (with both WinRAR and 7zip) with no errors.

For fun, I tried importing the SharpCompress.dll from Duplicati’s program folder into PowerShell and…it worked fine?

> Add-Type -Path "C:\Program Files\Duplicati 2\SharpCompress.dll"
> $filestream = [System.IO.File]::OpenRead("C:\Scripts\Duplicati\duplicati-befdc947e41864b24af6c0b4ddbe79d07.dblock.zip")
> $reader = [SharpCompress.Readers.ReaderFactory]::Open($filestream)
> $reader.ArchiveType
Zip
> $reader.MoveToNextEntry()
True
> $reader.Entry

CompressionType  : Deflate
Crc              : 1668773261
Key              : manifest
CompressedSize   : 118
Size             : 146
LastModifiedTime : 2019-03-13 05:21:06
CreatedTime      :
LastAccessedTime :
ArchivedTime     :
IsEncrypted      : False
IsDirectory      : False
IsSplit          : False
Attrib           :

So now, I’m really confused.

Should I open an issue about this on the Github project, or would it be irrelevant since I’m on the beta branch?

Thanks.

Whoops, never mind. Looks like the problem file was actually the 301-byte duplicati-b1ed12e0289f34889921c109400244ebf.dblock.zip.aes. After decrypting it, the zip file is 0 bytes, so I guess that explains the archive errors.

What follows are the steps I took to recover from this issue. I hope they can help someone if they encounter these same circumstances.

  1. Download the broken dblock in question, then delete it from the destination.
    • If something goes wrong, you can re-upload it, but only up until the point you actually purge it from the database.
  2. Attempt to run the repair command from the commandline option in the web UI, with the --rebuild-missing-dblock-files=true option set.
    • In this case, I knew from running the affected command previously that this particular dblock was only being used for one file, and I knew for certain that particular file had not changed since it was added.
    • However, Duplicati was still unable to rebuild the block, saying Repair cannot acquire 511 required blocks, so I continued.
  3. Run list-broken-files to confirm which filesets and files would be affected by purging.
    • In my case, it confirmed that only a single file was affected, and only for the filesets since I added it to my backups.
  4. Run purge-broken-files to remove the file(s) from the fileset(s) indicated by the output of list-broken-files.
    • This re-creates and re-uploads all of the affected dlists, so it can take some time.
  5. Run a normal repair operation (Database… > Repair) to confirm everything is happy.
  6. Run a normal backup via the Run now button.
  7. If the backup completes successfully, and doesn’t trigger compacting as part of the backup, manually run compact.
1 Like