Seadrive not as resilient as Seafile client in DR situation

My home development server running Seafile in a Hyper-V VM is having a bit of a bad hair day recently and has lost my main data drive twice. Okay so this isn’t normal but it has caused me to apply my disaster recovery plan for Seafile. The server is backed up every two hours by Veeam which has a great instant restore feature - gets the Hyper-V VM running in about a minute by mounting the VM directly to the backup storage - you can then restore to production as your leisure.

Anyway, I digress - this has exposed a problem with Seadrive vs Seafile client. My DR plan is:

  1. Backup my local Seafile client data folder on my PC - I sync everything (this is just a dev env)
  2. Instant restore the Linux VM in Hyper-V
  3. Any folders that have been updated locally since the backup stop synchronising in Seafile client
  4. Quick “Resync the library” resolves this

At this point, one either ends up with sfconflict files OR I restore that backup taken in step #1 above.

Now this DR process is only possible because this is a development system and I’m the only user. But it did think about the DR process for a couple of my clients who have much bigger Seafile installations. Fortunately, they’re running in Azure cloud so the chances of a failure like this are much reduced. But not totally removed - there is a scenario where one has to restore a backup, e.g. ransomware.

Anyone running Seafile client is reasonably okay. You’d have to show them how to resync the folders and sort out sfconflict files.

However Seadrive is nowhere near as robust. I tend to run Seafile client on my PC and local VMs but use Seadrive on my laptop. It’s now effectively broken:

image

The only way to resolve this is to resync the account:

image

But this has two problems. Firstly, as discussed in a separate post, this creates a new folder so any folder redirection fails. Secondly, I don’t think the sfconflict system works the same - any changes made on that computer after the backup are in the original folder and don’t get uploaded/conflicted. They’re lost…

I’m going to do some more tests but IMO this makes Seadrive not fit for commercial use.

Ive lost data while setting up a new client pc with seadrive. I moved the clients data into the the seadrive folders, subsequently seadrive encountered an error and would not move forward with the sync. I selected resync and the damn thing deleted the old directory that I moved the client data into and created a new root directory.

Devs should really remove that behavior from seadrive and let the user delete the data