Backup job hanging

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?

1 Like