Using Duplicati v2.0.4.18 (canary): as of last week, my backup jobs never finish. They used to take ~20 minutes, but now they hang for hours.
I ran Duplicati under the debugger, and found that it hangs in LocalBackupDatabse.AppendFilesFromPreviousSetWithPredicate(), where it keeps enumerating the DB (line 800, foreach loop).
The executed query is
SELECT
f."Path",
fs."FileID",
fs."Lastmodified",
COALESCE(bs."Length", - 1)
FROM
(
SELECT DISTINCT
"FileID",
"Lastmodified"
FROM
"FilesetEntry"
WHERE
"FilesetID" = 15
AND "FileID" NOT IN (
SELECT
"FileID"
FROM
"FilesetEntry"
WHERE
"FilesetID" = 16
)
) AS fs
LEFT JOIN "File" AS f ON fs."FileID" = f."ID"
LEFT JOIN "Blockset" AS bs ON f."BlocksetID" = bs."ID";
Manually running the query yields 766961 rows in the result set. What I don’t understand is why suddenly this seems to be a problem, where it wasn’t an issue until a few days ago.
Any idea?