Duplicati.Server users 50% CPU with nothing scheduled

On one of my Windows 10 machines (an older laptop) I’ve noticed that one of the two Duplicate.Server services (2.0.4.22_canary_2019-06-30) uses a LOT of CPU.

This is particularly alarming because this is an on-demand backup system - meaning there are no scheduled tasks (which the GUI confirms) and the Live Profiling log shows no activity either.

Is there a way to tell what is being done with all that CPU and how to stop it?

Note that ending the 0% CPU task caused the remaining task to drop to 0% after about 10 seconds. This caused a connection issue with the UI but a refresh reconnected w/out problem and only one instance of Duplicati.Server remained.

The only recent errors are update problems - could it have been spinning it’s wheels trying to update?

Jul 31, 2019 9:59 PM: Error in updater
System.Net.WebException: The remote server returned an error: (502) Bad Gateway.
   at System.Net.WebClient.DownloadFile(Uri address, String fileName)
   at Duplicati.Library.AutoUpdater.UpdaterManager.CheckForUpdate(ReleaseType channel)
Jul 31, 2019 9:59 PM: Error in updater
System.Net.WebException: The remote name could not be resolved: 'alt.updates.duplicati.com'
   at System.Net.WebClient.DownloadFile(Uri address, String fileName)
   at Duplicati.Library.AutoUpdater.UpdaterManager.CheckForUpdate(ReleaseType channel)

Process Monitor can maybe give you a bit more insight into what the process is doing, e.g. is it using the disk or network? Task Manager can do a bit of that on Process tab, but small actions might not be visible.

For a close look at the network (f the network is involved), there’s Wireshark, and for a simpler peek, you might be able to see whether Duplicati is looking up some hostname in DNS, preparing to connect there:

DNS Caching and How It Makes Your Internet Better

For a heavy C# debug examination, use a debugger.

I might be having the same problem with 2.0.4.22_canary_2019-06-30.

My backups that usually take 30 minutes now run for 17 hours and the CPU on that Duplicate.Server process is pegged at 25%. Watching the job’s status, I currently see it’s stuck on a simple little zip file that’s a few KB, so it shouldn’t take long for it to be processed, but it is. I either have to wait out the 17 hour job or click Stop Now, then restart the Duplicati service to fix the CPU usage, then restart the backup job.

I noticed after I clicked Stop Now, but before I restart the service, I’m unable to view the backup job’s log. It gives the usual error about the database being locked. So maybe the high CPU usage is related to the local db…

Things done in the DB can usually be spotted with –log-file with –log-file-log-level=profiling and additional --profile-all-database-queries=true to make a huge amount of output. Needs something like glogg to read.

Viewing the Duplicati Server Logs might get something, but I’m not sure how the web browser deals with floods of output from Profiling. I suspect you’ll also not have --profile-all-database-queries option this way.

In terms of when this situation arose, is there a thought it’s new with 2.0.4.22? What was running before?

Microsoft is also updating .NET Framework periodically. Is that what everybody’s on and getting updates?