Missing blocklist hashes?

#1

This error popped up today

Found 1 file(s) with missing blocklist hashes

What does it mean?

Thanks

How to recover from interrupted backup
#2

It means that something is broken in the database.

Did you notice anything special that happened before this error popped up?

#3

Hello…
I started having this error after my backup destination (a local HDD) had a very low free space for a short period of time while the backup job was running.

Now this error is shown every time I attempt to start this job, and it doesn’t start.
Any idea how to fix this issue?

Running Duplicati - 2.0.3.5_canary_2018-04-13

Thanks

#4

Repairing the database (without deleting it) then restarting the backup job seems to have fixed the issue :slight_smile:

#5

Thanks for letting us know how you resolved this. It sounds like during a backup you ran out of space to store a dlist or dindex file - both of which can be regenerated from the local database using the “Repair” command as you did. :+1:

#6

Hello,
I am getting the same error in Duplicati on one of my backups to Backblaze. I have tried repairing the database, but the repair indicates success with no action. Here is an example output:

MainOperation: Repair
RecreateDatabaseResults: null
ParsedResult: Success
EndTime: 8/13/2018 8:13:55 PM (1534191235)
BeginTime: 8/13/2018 8:13:52 PM (1534191232)
Duration: 00:00:03.1783020
Messages: [
    Destination and database are synchronized, not making any changes
]
Warnings: []
Errors: []
BackendStatistics:
    RemoteCalls: 1
    BytesUploaded: 0
    BytesDownloaded: 0
    FilesUploaded: 0
    FilesDownloaded: 0
    FilesDeleted: 0
    FoldersCreated: 0
    RetryAttempts: 0
    UnknownFileSize: 0
    UnknownFileCount: 0
    KnownFileCount: 555
    KnownFileSize: 41956679359
    LastBackupDate: 8/5/2018 11:00:00 AM (1533466800)
    BackupListCount: 59
    TotalQuotaSpace: 0
    FreeQuotaSpace: 0
    AssignedQuotaSpace: -1
    ReportedQuotaError: False
    ReportedQuotaWarning: False
    ParsedResult: Success

Retrying the backup after a repair has the same failure result. Any suggestions on how I can solve this problem? Thank you.

#7

Hello @Tony_Grosinger, welcome to the forum!

Can you let us know what version of Duplicati you are running and what the exact message is (for example, is it "Found 1 file(s) with missing blocklist hashes" reporting a single file like SamSirry poster had)?

#8

Thank you @JonMikelV.

The exact error message is “Found 1 file(s) with missing blocklist hashes” and I am running Duplicati 2.0.3.3_beta_2018-04-02.

The strange thing is when I click on the “Show” button for the error, I can not actually find it in the list of messages. The backup definitely is not succeeding though, whether run manually or automatically.

#9

Thanks for the info.

The “Show” button seems to always assume the error is in the job log, but many of the critical errors like you got are actually stored in the global log.

Try going to the main menu “About” -> “Show log” page where I suspect you’ll see a message similar to Failed while executing "Backup" with id: 3. If you click on that line it should expand and show you details about the error - please copy / paste those here if possible.

#10

* System.IO.InvalidDataException: Found 1 file(s) with missing blocklist hashes at Duplicati.Library.Main.Database.LocalDatabase.VerifyConsistency (System.Data.IDbTransaction transaction, System.Int64 blocksize, System.Int64 hashsize, System.Boolean verifyfilelists) [0x0016d] in &lt;ae134c5a9abb455eb7f06c134d211773&gt;:0 at Duplicati.Library.Main.Operation.BackupHandler.Run (System.String[] sources, Duplicati.Library.Utility.IFilter filter) [0x00238] in &lt;ae134c5a9abb455eb7f06c134d211773&gt;:0 at Duplicati.Library.Main.Controller+&lt;&gt;c__DisplayClass17_0.&lt;Backup&gt;b__0 (Duplicati.Library.Main.BackupResults result) [0x00036] in &lt;ae134c5a9abb455eb7f06c134d211773&gt;:0 at Duplicati.Library.Main.Controller.RunAction[T] (T result, System.String[]&amp; paths, Duplicati.Library.Utility.IFilter&amp; filter, System.Action1[T] method) [0x0014b] in <ae134c5a9abb455eb7f06c134d211773>:0 at Duplicati.Library.Main.Controller.Backup (System.String inputsources, Duplicati.Library.Utility.IFilter filter) [0x00068] in <ae134c5a9abb455eb7f06c134d211773>:0 at Duplicati.Server.Runner.Run (Duplicati.Server.Runner+IRunnerData data, System.Boolean fromQueue) [0x00494] in <670b0e4a9ae144208688fcb192d20146>:0`

#11

Thanks for the error message details.

Unfortunately, I haven’t worked with the database VerifyConsistency code at all so I’m going to call out to @Pectojin to see if he has any thoughts on this.

#12

A repair should take care of missing blocklist hashes.

The method to fix them, FixMissingBlocklistHashes, is invoked as the last step in the repair here: duplicati/RepairHandler.cs at master · duplicati/duplicati · GitHub

If that doesn’t work, then I’d assume something is wrong with that method.

#13

I have attempted a repair multiple times, and unfortunately it has not actually fixed the issue.
Anything else I can try? Any way I can get my backup going again without needing to upload everything again?

#14

If you’re willing to try what seems like a long shot to me, you could see if list-broken-files sees any problems…

The usual big-gun fix for a database problem is the Recreate button, but I’m hesitating because it can be slow. Perhaps you could say how big your backup is (in source or destination terms) then someone might comment. Actually your post has some BackendStatistics, so maybe this is about 42 GB. That doesn’t seem super large.

Recreate is, I think, more download than upload. That might matter on asymmetric links such as cable modem.
There’s also a question of whether you’d rather keep old versions, or save some space by doing a fresh start.

There are two more expert repairers in this thread. I’m just going to suggest there’s hope for your stated wish.

#15

Repair usually just confirns local database and remote file lists / hashes match, but it doesn’t check actual backup files (that’s what Verify does).

It’s possible the remote dlist / dindex files also have the “problem” so repair doesn’t detect it and recreate just makes a new database with the same problem.

If that’s the case, then a recreate after removing some of the files from the destination should resolve the issue. BUT, that is a last resort.

Perhaps @kenkendk could glean something from a database report?

How to recover from interrupted backup
#16

Hello, I get same problem - backup job stopped working

Failed: Found 6 file(s) with missing blocklist hashes
System.IO.InvalidDataException: Found 6 file(s) with missing blocklist hashes at Duplicati.Library.Main.Database.LocalDatabase.VerifyConsistency(IDbTransaction transaction, Int64 blocksize, Int64 hashsize, Boolean verifyfilelists) at Duplicati.Library.Main.Operation.BackupHandler.Run(String[] sources, IFilter filter) at Duplicati.Library.Main.Controller.&lt;&gt;c__DisplayClass17_0.&lt;Backup&gt;b__0(BackupResults result) at Duplicati.Library.Main.Controller.RunAction[T](T result, String[]&amp; paths, IFilter&amp; filter, Action`1 method) at Duplicati.Library.Main.Controller.Backup(String[] inputsources, IFilter filter) at Duplicati.Server.Runner.Run(IRunnerData data, Boolean fromQueue)

Duplicati - 2.0.3.2
Windows 2012r2

I already tried:

  1. Repair - no problem
  2. Verify
  3. list-broken-files - I get “Return code: 0”
  4. Verify “all” with “–full-remote-verification=true” - I get Examined 907 files and found no errors Return code: 0

What should I do please?

  • Should I verify “all”?
  • Should I recreate database?
  • Or is this fixed I newer versions? Sadly I don’t want to update because metadata bug.

Thank you

#17

@ts678, here are the backup sizes:

Source: 37.47 GB
Backup: 39.08 GB / 59 Versions

The data is being stored in a cloud provider, so data upload is free, whereas I have to pay for download. If a recreate is the only option then I think I would just start a fresh backup and delete this one eventually.

#18

This happened to me about a week ago. I’ve tried repair and have been recreating the database for a good 4 or 5 days now. It’s still showing queries in the log so I know it’s doing something. It kinda sucks to end up with about 2TB backed up and it takes a week to rebuild the database if there’s a problem. :frowning:

#19

Hello, lucky you:)
I have some “progress”
Repair is now reporting:

System.Exception: Unexpected update count: 0 at Duplicati.Library.Main.Database.LocalRepairDatabase.FixMissingBlocklistHashes(String blockhashalgorithm, Int64 blocksize

And I already tried rebuild DB and problem is even bigger. I have to open new topick for my situation :confused:

System.Exception: The recreate failed, please create a bug-report from this database and send it to the developers for further analysis…

But I find out what caused this situation. Duplicati backup was interrupted by windows update scheduled reboot.

#20

Hi,

I found a way to reproduce the problem.
I backup to Wasabi and I forgot to put my new credit card.
This produce a 403 error when trying to upload a new file.
Duplicati stops and doesn’t produce any entry in general or remote logs.
The only way to find the problem it is to log in a file.

Now Wasabi is ok and some of my backups have this corrupted hashes blocklist error.
A repair database fix the problem.

The 403 error from Wasabi is badly handle.

Cheer,
Remi