"Previous volume not finished, call FinishVolume..." error

Something like the commandline call referenced here should output a file of what was actually backed up.

OK - on my CentOS7 where duplicati is being run as a service that sqlite file seems to in /root/.config/Duplicati

However, substituting the path, the command fails with an error

Operation List with file attempt 1 of 5 failed with message: The folder /usr/lib/duplicati/0 does not exist => The folder /usr/lib/duplicati/0 does not exist

What does that 0 mean in your command?

(As an aside, any way to use MySQL (MariaDB etc) instead of sqlite?)

Actually, that’s not my command and TBH I didn’t test it.

The commandline that I use to compare the most recent backup (#0) to the next oldest one (#1) would look something like this:

Duplicati.CommandLine.exe compare --dbpath="C:\MyDuplicati\data\DASTHBKTUW.sqlite" 0 1 --verbose

I got the dbpath value out of “Export… As Command-line”. The --verbose parm makes sure all changes are listed rather than just a summary.


Here’s the actual help text for the Compare command, in case it helps…

Duplicati.CommandLine.exe help compare

Usage: compare <storage-URL> [<base-version>] [<compare-to>] [<options>]

  Compares two backups and shows differences. If no versions are given,
  changes are shown between the two latest backups. The versions can either
  be timestamps or backup version numbers. If only one version is given, the
  most recent backup is compared to that version.

  --verbose
    Shows names of files
  --include=<filter>
    Adds an include filter (for verbose output)
  --exclude=<filter>
    Adds an exclude filter (for verbose output)

Oh, I see — the integers refer to version history.

However, that didn’t work either. I’m being told there’s no local database but as you can see from the very bottom, there clearly is.

Darn these teething problems … so close …

(By the way, I really appreciate the responses from you)

[root@gateway2 duplicati]# mono Duplicati.CommandLine.exe compare --dbpath /root/.config/Duplicati/WEDOSRHNZJ.sqlite 0 1

Enter encryption passphrase:
No local database, accessing remote store
Listing remote folder …
Operation List with file attempt 1 of 5 failed with message: The folder /root/.config/Duplicati/WEDOSRHNZJ.sqlite does not exist => The folder /root/.config/Duplicati/WEDOSRHNZJ.sqlite does not exist
Listing remote folder …
Operation List with file attempt 2 of 5 failed with message: The folder /root/.config/Duplicati/WEDOSRHNZJ.sqlite does not exist => The folder /root/.config/Duplicati/WEDOSRHNZJ.sqlite does not exist
mono_os_mutex_trylock: pthread_mutex_trylock failed with “Invalid argument” (22)
Aborted (core dumped)
[root@gateway2 duplicati]#
[root@gateway2 duplicati]#
[root@gateway2 duplicati]# ls /root/.config/Duplicati/
control_dir_v2/ dbconfig.json Duplicati-server.sqlite WEDOSRHNZJ.sqlite

Something may have eaten the “=” in your post, can you confirm that the dbpath parameter includes an “=” like this?

–dbpath=/root/.config/Duplicati/WEDOSRHNZJ.sqlite

Note that for me (on Windows) I needed to also have a quotes around the path, like this:

–dbpath="/root/.config/Duplicati/WEDOSRHNZJ.sqlite"

Oh, and yes - Duplicati is so close to exactly what I want too! (And you’re welcome - I appreciate your patience with the oh-so-painful process of remote / blind debugging.) :slight_smile:

1 Like

Yes that did it — I did not have an ‘=’ there. In the linux world, I’m not used to putting ‘=’ in between a switch and its argument.

Thanks again — I’ll explore this some more to make sure it’s really backing up what it’s supposed to.

1 Like

@kees-z
Thanks for your support and script. Even though I used the script the backup list was empty on the address http://127.0.0.1:8200. I took me a little tinkering to export and import the backups but it works great now with the VSS now. One question is though being how do I change the address from port 8300 to port 8200 for the tray icon because every time I double click the Duplicati icon in the tray bar it opens up in the browser with the 8300 address. Do I need the port 8300 anyway?
Best Regards

Try adding the ‘–no-hosted-server’ parameter to you tray icon shortcut.

Sorry to hear the script didn’t work for you. Did you get any error messages running it? Did the script propose the correct source and destination paths before the copy process started?

Glad to hear that. Thanks for the feedback!

I suppose @JonMikelV answered that question sufficiently. In addition to that, optionally add --hosturl=http://127.0.0.1:8200 (replace with address and port Duplicati server is actually running with) to connect to the correct instance.

Not intended to rush you :slight_smile: Any sense as to when this particular fix might happen —

@kees-z @JonMikelV

I have added the following shortcut in the “target” box of the shortcut for the tray icon:
“C:\Program Files\Duplicati 2\Duplicati.GUI.TrayIcon.exe” –no-hosted-server
But when I start it, it still opens up port 8300 in the browser.

Sorry to hear the script didn’t work for you. Did you get any error messages running it? Did the script propose the correct source and destination paths before the copy process started?

No, it didn’t show any errors it actually all went fine and the databases where copied. But I still had to export the settings from the browser 8300 to the browser with the port 8200. Then I actually had to copy the database files to the new location and edit the “Local database path:” so it would point to the right database file. Then I just repaired the database, just to be on the safe side.

I suppose @JonMikelV answered that question sufficiently. In addition to that, optionally add --hosturl=http://127.0.0.1:8200 (replace with address and port Duplicati server is actually running with) to connect to the correct instance.

Actually @JonMikelV suggestion won’t work for me, see above. Sorry for being kind of stupid but where do I add “–hosturl=http://127.0.0.1:8200”?

Also, a last small question, very often when I open the page “http://localhost:8200/ngax/index.html#/” the following message pops up in the middle of the monitor: Missing XSRF Token I just hit OK and the backup works but how can I get rid of the message?

Best Regards

It looks like your command line options start with a single dash "-". All command line options should be preceeded with a double dash "--", so the properties of your shortcut to the tray icon should be:

“C:\Program Files\Duplicati 2\Duplicati.GUI.TrayIcon.exe” --no-hosted-server --hosturl=http://127.0.0.1:8200

Yeeees! Thanks works GREAT now!

Why do you think the Missing XSRF Token shows up now and then?

Best Regards

If you’re in the Canary update channel, this should be fixed. For the Beta version, this is a known problem, it should be fixed in the next beta.
For the time being, workaround is to refresh your web browser page.

Thanks. All of a sudden again getting error: System.InvalidOperationException: Previous volume not finished, call FinishVolume before starting a new volume

Haven’t done anything to it actually. Nothing added or deleted… it’s really strange.
What could I do?

Best Regards

Still getting the dreadful: Previous volume not finished, call FinishVolume before starting a new volume.
I’m running Duplicati - 2.0.1.73_experimental_2017-07-15.

I have recreated and tried the “Repair” and the “Recreate (delete and repair)” functions and I am on Windows 10.
Nothing helps. No Logs.

What am I doing wrong. A month ago I had no issues whatsoever.

Please advice.
Best Regards

LOL. I’m answering myself. Now the second drive throws me the same error message.
So, backups on none of the drives are not working anymore. Really weird. What can I do about this?
Best Regards

Well … it feels like the more time I get to work on Duplicati the more work appears.

Right now I have trouble keeping up with just responding to forum messages and github issues. Thanks to @JonMikelV I have not given up completely yet :slight_smile:.

2 Likes

In case this helps at all –

Having the same issue - CentOS 7, Duplicati running as server, backing up to BackBlaze, It LOOKS Like the system builds an upload file, but never uploads it.

Reported error is
System.InvalidOperationException: Previous volume not finished, call FinishVolume before starting a new volume
at Duplicati.Library.Main.Volumes.IndexVolumeWriter.StartVolume (System.String filename) [0x00010] in :0
at Duplicati.Library.Main.Operation.BackupHandler.UpdateIndexVolume () [0x00043] in :0
at Duplicati.Library.Main.Operation.BackupHandler.FinalizeRemoteVolumes (Duplicati.Library.Main.BackendManager backend) [0x00169] in :0
at Duplicati.Library.Main.Operation.BackupHandler.Run (System.String[] sources, Duplicati.Library.Utility.IFilter filter) [0x00665] in :0

So — interestingly on this PARTICULAR backup that would never actually start shipping data to the remote Backblaze server, I made it START working by changing the upload volume size. I had it set at 500 Meg because I was a little concerned about creating such a large number of files remotely. I kicked it back down to 50 Meg and the backup ran overnight.