Database recreate slowness, Duplicati 2.0.6.3_beta_2021-06-17 status?

Got a link to the recommendation and the issue you intend to fix? You don’t want to make things worse.
This is far from a universal fix. It regenerates dindex files from database data – if database has the info.
Prior problems and fix attempts by recreating the database may prevent it. I can test that, if it helps any.

I’m not sure how reliably database condition can be determined. What would the cautious approach be? Sometimes I suggest renaming (change duplicati- prefix), or moving to a subfolder, instead of delete.
Looking inside database to do a sanity check is possible (but hard), or study an upload-verification-file.

The technique mentioned is probably not. I can think of at least one fix to a Canary dindex creation bug.
About → Changelog will show some dindex fixes, but I have no idea what problem you’re experiencing.

EDIT:

Tested a tiny clean new backup. Delete the dindex, run Repair, dindex comes back. All good so far then
delete dindex, run Recreate (delete and repair) while watching About → Show log → Live → Verbose to notice that it feels the need to download dblock files because it’s searching for blocks not in any dindex.

It does find them, but it leaves a destination without the old dindex. It has no record of its name because the database and the destination were the only places that used to know it. It doesn’t make a new name although it seems like it might be possible. That might be a nice enhancement if some expert volunteers.

I think the above is a seemingly functioning local database because the block information was recovered after some extra searching which can lead to a slow recreate, especially in the last 10% on progress bar, however it’s not functioning well enough to regenerate the dindex file even under a newly invented name.

If looking at the database with DB Browser for SQLite, one sanity check for this might be to count Blocks (dblock files) in Remotevolume table and make sure there are at least that many rows in IndexBlockLink, which is where Duplicati records the association between the dindex and the dblock file that it’s indexing.

Things that make you go, “Uh-oh.” gets technical about some cases of mismatching dindex and dblocks, however I don’t know whether that’s your issue. Missing dindex can definitely slow DB recreates though.

1 Like