Duplicati fails to start on new Windows install

At first instance i installed on a PC which was not up to date w.r.t. Windows 10 (v1909 iso v20H2)
So after updating Windows I retried installation of Duplicati (first remove then install the freshly downloaded windows installer v2.0.5.1) I notice that Duplicati window in browser doesn’t open and no instance of duplicati in system tray. Taskmanager does show 2 instances of Duplicati but with 0% activity,
Checking the folder C:\ProgramData\Duplicati\updates shows 3 files and one has this content (sorry in Dutch):
System.Reflection.TargetInvocationException: Het doel van een aanroep heeft een uitzondering veroorzaakt. —> System.Exception: Een ernstige fout trad op in Duplicati: System.Exception: Failed to create, open or upgrade the database.
Error message: Database formaat bepalen is niet mogelijk: Object kan niet van DBNull naar andere typen worden geconverteerd.
bij Duplicati.Server.Program.GetDatabaseConnection(Dictionary2 commandlineOptions) bij Duplicati.Server.Program.RealMain(String[] _args) ---> System.Exception: Failed to create, open or upgrade the database. Error message: Database formaat bepalen is niet mogelijk: Object kan niet van DBNull naar andere typen worden geconverteerd. bij Duplicati.Server.Program.GetDatabaseConnection(Dictionary2 commandlineOptions)
bij Duplicati.Server.Program.RealMain(String _args)
— Einde van intern uitzonderingsstackpad —
bij Duplicati.GUI.TrayIcon.HostedInstanceKeeper…ctor(String args)
bij Duplicati.GUI.TrayIcon.Program.RealMain(String _args)
— Einde van intern uitzonderingsstackpad —
bij System.RuntimeMethodHandle.InvokeMethod(Object target, Object arguments, Signature sig, Boolean constructor)
bij System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Object obj, Object parameters, Object arguments)
bij System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object parameters, CultureInfo culture)
bij Duplicati.Library.AutoUpdater.UpdaterManager.RunMethod(MethodInfo method, String args)

Restarting PC and repeating uninstall followed by Install doesn’t help.

Anyone who can be of help?

Welcome to the forum @Sjeppie

I think I need to understand the installation and run history a bit, before continuing.

Was this the first time you installed Duplicati, and did you run it (or try) before this:

Are these GUI-based installs from the downloaded .msi file, with nothing more like Windows service?

Duplicati can have a variety of processes. If this was two Duplicati.GUI.TrayIcon.exe, that’s usual setup.

Is this file named Duplicat.crashlog.txt, and does its date place it after the Windows update or before it?

What are the other 2 named?

What happens if you manually try to browse to http://localhost:8200? Is it nothing or a Duplicati?

Unless told otherwise, Duplicati keeps various databases (all with names ending in .sqlite) in folder C:\Users\<user-starting-Duplicati\>\AppData\Local\Duplicati Are there recent files there?

Looks like it should be from

Failed to create, open or upgrade the database. Determining database format is not possible. Object cannot be converted from DBNull to other types.

Possibly a permission/access problem.

It technically shouldn’t fail to start on it however so its also a possible bug situation depending on the devs.

Yes, and for any readers who wonder how I got there (maybe you did the same to get it):

Tracing attempt (awaiting information on installation, and DB location and contents) was:

finds that this part was a Duplicati-generated message, and finds the English text for it.
Next, find where the message is in the code:

Next, find out what uses the message:

Next, find that this more explanatory error message is just passed by Duplicati, so try a search engine.
Guess at English translation, or get help guessing from translate.google.com or similar translation tool.
The translation often won’t give the exact English words that message author wrote, but pieces may fit.

Next, use SQL expertise (which I lack sufficiently) to try to see why the exception might have happened.
Maybe the DBNull is also being generated by some intermediate layer that connects C# to SQLite code.

As always, this would be easier to debug (e.g. with a debugger) if it was known how to set up the issue, therefore try to find the installation and run history. Clearing up the issue might just take removing some database, but understanding the issue to avoid it in the future might mean taking close look at database.

Unless the guess below can do it. I would have guessed a bad database, e.g. one not actually initialized

Permission problem can be somewhat ruled in or out by learning whether the user profile is accessible. Technically advanced users can use Sysinternals Process Monitor to actually see attempted DB action.
Somewhat simpler is Sysinternals Process Explorer Find handle or DLL to see what Duplicati used:

Duplicati.GUI.TrayIcon.exe 6784 File C:\ProgramData\Duplicati\duplicati-\RUN\Duplicati-server.sqlite

is where I expect my server database to be, because I use –server-datafolder to allow multiple Duplicati.

What I’m trying to find out now is where the Duplicati databases are, and next step may be what’s inside.
DB Browser for SQLite is good to actually look, but some guessing can be made just from very-tiny size.

That theory just faded after some test (sometimes it’s not worth chasing a path without some guidance).
Hiding Duplicati-server.sqlite and starting Duplicati rebuilt it and gave me First run setup, as it should:


and trying to trick it with empty Duplicati-server.sqlite was also handled right, so issue cause is unclear.
There are also per-job sqlite databases with randomized names, but I don’t know if a backup was done.

Thanks to all of you who have replied to this topic. It is s abit difficult to go back and forth on that machine to try and analyse the issue as this is not my own PC but from a client and not in my office either.
Therefor I decided to skip Duplicati alltogether for this instance and use nexctloud client for folder sync. That is good enough for now. On many other machines, Duplicati works like a charm.