Error while running backup due to invalid timestamp

Hey Everyone,

I’m having trouble pinning down the location of a “bad” file. According to Duplicati, my backups are essentially halted because one file has an invalid timestamp. The trouble is, I don’t know how to find the file that’s causing this! Here’s what I see in “http://localhost:8200/ngax/index.html#/log”:

System.ArgumentOutOfRangeException: Not a valid Win32 FileTime.
Parameter name: fileTime
at Duplicati.Library.Main.BackendManager.List()
at Duplicati.Library.Main.Operation.FilelistProcessor.RemoteListAnalysis(BackendManager backend, Options options, LocalDatabase database, IBackendWriter log, IEnumerable1 protectedFiles) at Duplicati.Library.Main.Operation.FilelistProcessor.VerifyRemoteList(BackendManager backend, Options options, LocalDatabase database, IBackendWriter log, IEnumerable1 protectedFiles)
at Duplicati.Library.Main.Operation.BackupHandler.PreBackupVerify(BackendManager backend, String protectedfile)
at Duplicati.Library.Main.Operation.BackupHandler.d__20.MoveNext()
— End of stack trace from previous location where exception was thrown —
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at CoCoL.ChannelExtensions.WaitForTaskOrThrow(Task task)
at Duplicati.Library.Main.Controller.<>c__DisplayClass14_0.b__0(BackupResults result)
at Duplicati.Library.Main.Controller.RunAction[T](T result, String[]& paths, IFilter& filter, Action`1 method)
at Duplicati.Library.Main.Controller.Backup(String[] inputsources, IFilter filter)
at Duplicati.Server.Runner.Run(IRunnerData data, Boolean fromQueue)

If anyone knows how I can find out more to resolve this, that would be excellent. This is a serious problem that I need to address quickly.

Thank you very much for your time,

Triston

Hello and welcome!

Interesting, looks like it’s getting this error when checking your back end files. What type of back end are you using (what protocol)? Can you try to manually view the files on the back end? Try sorting by date and looking for anomalous dates near the start or end of the list.

Since a few days I get the same (or a similar) error:

2022-01-13 15:55:14 +01 - [Error-Duplicati.Library.Main.Controller-FailedOperation]: The operation Backup has failed with error: Not a valid Win32 FileTime.
Parameter name: fileTime
System.ArgumentOutOfRangeException: Not a valid Win32 FileTime.
Parameter name: fileTime
   at Duplicati.Library.Main.BackendManager.List()
   at Duplicati.Library.Main.Operation.FilelistProcessor.RemoteListAnalysis(BackendManager backend, Options options, LocalDatabase database, IBackendWriter log, IEnumerable`1 protectedFiles)
   at Duplicati.Library.Main.Operation.FilelistProcessor.VerifyRemoteList(BackendManager backend, Options options, LocalDatabase database, IBackendWriter log, IEnumerable`1 protectedFiles)
   at Duplicati.Library.Main.Operation.BackupHandler.PreBackupVerify(BackendManager backend, String protectedfile)
   at Duplicati.Library.Main.Operation.BackupHandler.<RunAsync>d__20.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at CoCoL.ChannelExtensions.WaitForTaskOrThrow(Task task)
   at Duplicati.Library.Main.Controller.<>c__DisplayClass14_0.<Backup>b__0(BackupResults result)
   at Duplicati.Library.Main.Controller.RunAction[T](T result, String[]& paths, IFilter& filter, Action`1 method)

My backend is a Linux Samba Server (actually with ZFS and the Samba ZFS sharing enabled).

The date range of files in that directory is from November 2020 to 8th January 2020 (the last day the backup was working)

I tried the code from that callstack on my directory and the LastWriteTime (shown by ls in linux and in Windows Explorer by default) is fine. But when accessing LastAccessTime I get the exact same exception for a some files.

For some files the LastAccessTime is just empty (but only one file throws that exception)

To fix this i used touch -a on these files.

1 Like

Great, thank you for posting your experience and a quick fix. I wonder why this happens in the first place, though.

Same issue, very odd. I am trying this fix now! Mine is also a samba share, but with BTRFS as the FS.

I am very curious about this also… it could have been a samba update? I’m going to look through my linux server logs to see if anything stands out.

Edit: I am wondering if it is this update? I am not positive, but I believe CIFS uses CEPH and that was updated on 1/6. libcephfs2

Commandline: apt-get -y install command-not-found google-chrome-stable libcephfs2 libnss-systemd libpam-systemd librados2 libsystemd0 libudev1 linux-firmware linux-libc-dev python3-commandnotfound systemd systemd-sysv systemd-timesyncd udev
Upgrade: linux-libc-dev:amd64 (5.15.11-051511.202112241501, 5.15.12-051512.202112311157), libsystemd0:amd64 (245.4-4ubuntu3.13, 245.4-4ubuntu3.14), libcephfs2:amd64 (15.2.14-0ubuntu0.20.04.1, 15.2.14-0ubuntu0.20.04.2), google-chrome-stable:amd64 (96.0.4664.110-1, 97.0.4692.71-1), udev:amd64 (245.4-4ubuntu3.13, 245.4-4ubuntu3.14), libudev1:amd64 (245.4-4ubuntu3.13, 245.4-4ubuntu3.14), systemd-timesyncd:amd64 (245.4-4ubuntu3.13, 245.4-4ubuntu3.14), python3-commandnotfound:amd64 (20.04.4, 20.04.5), systemd-sysv:amd64 (245.4-4ubuntu3.13, 245.4-4ubuntu3.14), libpam-systemd:amd64 (245.4-4ubuntu3.13, 245.4-4ubuntu3.14), systemd:amd64 (245.4-4ubuntu3.13, 245.4-4ubuntu3.14), libnss-systemd:amd64 (245.4-4ubuntu3.13, 245.4-4ubuntu3.14), command-not-found:amd64 (20.04.4, 20.04.5), linux-firmware:amd64 (1.187.23, 1.187.24), librados2:amd64 (15.2.14-0ubuntu0.20.04.1, 15.2.14-0ubuntu0.20.04.2)
End-Date: 2022-01-06  10:30:47

Now this issue is happening again for me.

Last time the “Last Access Time” was missing and i could fix it with touch -a but now on each backup new files are created without “Last Access Time” so I cannot fix it in between backups.

Does anyone expect a similar issue?

FYI, there is also an open issue for this problem: Not a valid Win32 FileTime · Issue #4700 · duplicati/duplicati · GitHub

2 Likes