Duplicati error message

duplicati-2.0.6.1-2.0.6.1_beta_20210503.noarch.rpm

Calling Duplicati via /usr/bin/duplicati for a local backup to an external USB-drive. Sometimes (i.e. in about 1 of 10 cases) when the backup is completed and I exit Duplicati via
Duplicati.GUI.TrayIcon → Quit
I get an error message. Don’t know whats causing this, neither do I know if it’s the symptom of a serious duplicati bug, nor do I understand the meaning of the message.

The error message is as follows:

System.Threading.ThreadAbortException: Thread was being aborted.
at (wrapper managed-to-native) System.Object.__icall_wrapper_ves_icall_thread_finish_async_abort()
at Duplicati.Server.WebServer.BodyWriter.WriteJsonObject (System.Object o) [0x00063] in <87f95256fc6a4c3ea353de8d2aacf89b>:0
at Duplicati.Server.WebServer.BodyWriter.OutputOK (System.Object result) [0x00006] in <87f95256fc6a4c3ea353de8d2aacf89b>:0
at (wrapper remoting-invoke-with-check) Duplicati.Server.WebServer.BodyWriter.OutputOK(object)
at Duplicati.Server.WebServer.RESTMethods.RequestInfo.OutputOK (System.Object item) [0x00006] in <87f95256fc6a4c3ea353de8d2aacf89b>:0
at Duplicati.Server.WebServer.RESTMethods.ServerState.GET (System.String key, Duplicati.Server.WebServer.RESTMethods.RequestInfo info) [0x0002a] in <87f95256fc6a4c3ea353de8d2aacf89b>:0
at Duplicati.Server.WebServer.RESTHandler.DoProcess (Duplicati.Server.WebServer.RESTMethods.RequestInfo info, System.String method, System.String module, System.String key) [0x00146] in <87f95256fc6a4c3ea353de8d2aacf89b>:0
System.Threading.ThreadAbortException: Thread was being aborted.
at (wrapper managed-to-native) System.Object.__icall_wrapper_ves_icall_thread_finish_async_abort()
at Duplicati.Server.WebServer.BodyWriter.WriteJsonObject (System.Object o) [0x00063] in <87f95256fc6a4c3ea353de8d2aacf89b>:0
at Duplicati.Server.WebServer.BodyWriter.OutputOK (System.Object result) [0x00006] in <87f95256fc6a4c3ea353de8d2aacf89b>:0
at (wrapper remoting-invoke-with-check) Duplicati.Server.WebServer.BodyWriter.OutputOK(object)
at Duplicati.Server.WebServer.RESTMethods.RequestInfo.OutputOK (System.Object item) [0x00006] in <87f95256fc6a4c3ea353de8d2aacf89b>:0
at Duplicati.Server.WebServer.RESTMethods.ServerState.GET (System.String key, Duplicati.Server.WebServer.RESTMethods.RequestInfo info) [0x0002a] in <87f95256fc6a4c3ea353de8d2aacf89b>:0
at Duplicati.Server.WebServer.RESTHandler.DoProcess (Duplicati.Server.WebServer.RESTMethods.RequestInfo info, System.String method, System.String module, System.String key) [0x00146] in <87f95256fc6a4c3ea353de8d2aacf89b>:0

Welcome to the forum @georgy

I suspect it’s harmless. Is everything working well, including a sample restore to verify that all is fine?

Duplicati polls server state from web browser’s UI and the tray icon. Below is a sample tray icon poll:

GET /api/v1/serverstate/?lasteventid=418&longpoll=true&duration=299s HTTP/1.1
Host: localhost:8200
Connection: keep-alive
sec-ch-ua: " Not;A Brand";v="99", "Microsoft Edge";v="91", "Chromium";v="91"
Pragma: no-cache
X-XSRF-Token: k1ZKhyof7ur+/cX7JwcxnViYnIQaQLsBzqyi57tz54Y=
X-UI-Language: en
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.77 Safari/537.36 Edg/91.0.864.41
Accept: application/json, text/plain, */*
Cache-Control: no-cache
sec-ch-ua-mobile: ?0
Sec-Fetch-Site: same-origin
Sec-Fetch-Mode: cors
Sec-Fetch-Dest: empty
Referer: http://localhost:8200/ngax/index.html
Accept-Encoding: gzip, deflate, br
Accept-Language: en-US,en;q=0.9
Cookie: default-theme=ngax; xsrf-token=k1ZKhyof7ur%2B%2FcX7JwcxnViYnIQaQLsBzqyi57tz54Y%3D

HTTP/1.1 200 OK
Cache-Control: no-cache, no-store, must-revalidate, max-age=0
Content-Language: en
Date: Thu, 10 Jun 2021 23:32:08 GMT
Content-Length: 520
Content-Type: application/json
Server: Tiny WebServer
Keep-Alive: timeout=20, max=400
Connection: Keep-Alive
Set-Cookie: xsrf-token=k1ZKhyof7ur%2B%2FcX7JwcxnViYnIQaQLsBzqyi57tz54Y%3D; expires=Thu, 10 Jun 2021 23:42:07 GMT;path=/; 

...{
  "ProgramState": "Running",
  "UpdatedVersion": null,
  "UpdaterState": "Waiting",
  "UpdateReady": false,
  "UpdateDownloadProgress": 0.0,
  "ActiveTask": null,
  "SchedulerQueueIds": [],
  "ProposedSchedule": [
    {
      "Item1": "1",
      "Item2": "2021-06-10T23:40:00Z"
    }
  ],
  "HasWarning": false,
  "HasError": false,
  "SuggestedStatusIcon": "Ready",
  "EstimatedPauseEnd": "0001-01-01T00:00:00",
  "LastEventID": 419,
  "LastDataUpdateID": 50,
  "LastNotificationUpdateID": 0

To get a full technical explanation, you’d have to file an Issue to try to get the right developer to explore it.
I’ve got some personal gripes about the console noise level when doing as you do, but it seems benign.

I suspect it’s harmless. Is everything working well, including a sample restore to verify that all is fine?

Good to hear that it’s probably harmless. And yes, I did a successful sample restore, but not of the complete last backup, but of a random file.