Things that make you go, "Uh-oh."

Did you try Repair? Do you have log-file logs? Has there been a DB recreate (if you know)? Was it slow?

Maybe you have a dindex file that’s irrelevant, redundant, or wrong, so should be deleted. But which is it?

DB recreate might spot it and complain, but it can be slow, and there are other ways to look for an oddity.

A nice tool is DB Browser for SQLite which might be in the Linux system package repo as sqlitebrowser.

image

The dindex file internally holds the name of the dblock that it indexes, but you’d have to open it up to see it.
Database repair ideally opens only dlist and dindex, and it calls an error if dindex points to missing dblock.

Or if you prefer a different way to get a lighter look at the database from Linux shell, upload-verification-file duplicati-verification.json can give it. What’s missing is the IndexBlockLink to find what’s unused.

I’m not sure if an unused dindex is guaranteed to be the one to delete though. It seems a good guess, but what happens on a DB recreate if two dindex files both claim to index the same dblock is unknown to me.