Restore from backup takes forever

I’ve read through reports about backup not being able to complete, but I have a different issue: my Arc (now 3.4.3) still has not restored from the backup.

Currently it reports 69% complete. I am not sure for how long this lasts, but either it is since last fall-winter (update to IOS 14), or since April 2019 (when I switched to the new phone).

This presents a couple of issues:

  • Track history/places database is incomplete
  • Arc gets terminated frequently and sometimes I notice that due to push alert, sometimes not, so tracking is pretty inconsistent and unreliable unless I am literally holding Arc’s hand manually launching and keeping it open to avoid termination.

I am trying to let it do its thing for the last couple of weeks (connected to power, open Arc, looking at the Settings screen), but progress is slow — mere percent or two per week.

If there’s anything I can do to speed it up, please let me know. In any case I am looking forward to the new sync/backup engine for Arc with great hope.

Hi @urbansheep!

Unfortunately there’s not a whole lot you can do to speed it up. Though you can do a little bit, which I’ll explain in a moment.

Some background: The current backup system uses iCloud CloudKit for storage, and is heavily constrained by how much work iOS will allow Arc to get done on the restores each day. In order to avoid iOS simply outright terminating the app every time the restore tries to do something, the restores have to be scheduled at iOS’s lowest priority. That lowest priority means that iOS can decide whether it wants to allow the requested transfer to happen or not, and very often iOS will simply refuse to let it happen.

That situation has got worse and worse over time, as iOS has become increasingly restrictive on how much work it allows apps to get done in the background. To the point now where often the backups make no progress at all in the background. Because of this unworkable situation I’m in the process of building a new backup system, that doesn’t use iCloud CloudKit, and can both backup and restore hundreds of times faster. I’m hoping to have that ready soon!

But back to what you can do now: the restores will run fastest (or at all) in the foreground. To trigger fast restores in the foreground, open the calendar view, then jump to days that have unrestored data. That will queue up all the timeline items in that day view for immediate restore, which can be done immediately, without waiting for iOS’s permission (because it’s in the foreground).

I think you can also get timeline items queued up for restore by using week timeline view. So that’s probably more efficient - switch to week view instead of day view, then jump back through the weeks, queueing up full weeks of items for restore.

It’s possible that doing this will still anger iOS, and increase the risk of iOS killing off the app randomly. So there’s no real winning. But at least this way you can keep the restore moving along and eventually finished!