FlexiTime Machine: how Sierra changes backups

sierratimemachine

Apple has made no announcement about it. It was omitted from Apple’s release notes on Sierra. Even the Time Machine pane still gives outdated information, which is no longer accurate. When running Sierra, macOS 10.12, Time Machine can now make its backups according to need, rather than at regular one-hour intervals.

timemachinep
Time Machine’s controls are simple, and diagnosing problems more tricky.

Prior to Sierra, every hour, so long as your Mac was awake, OS X would launch Time Machine’s backupd service to make another backup. If that failed for any reason, such as the backup drive being unavailable, then that backup would be skipped, and sometimes Time Machine turned itself off as a result. But its standard behaviour was to be woken every hour and back your files up. The only standard way of varying that was to use the Time Machine menu command to make a backup now, to skip a backup manually, or of course to turn the whole thing off.

sierratimemachine

The first difference that you will notice in Sierra is that the Time Machine pane has changed: now you merely have a checkbox to set whether automatic backups will be made. Note that the text in the right half of the pane has not changed, and still refers to backups being made every hour.

In fact if you look at the time that the next backup is due, it will often not be an hour on from the last backup. This is because – in certain situations, at least – backups are no longer made at regular time intervals, but their frequency is adjusted according to the expected need.

When Time Machine now makes a backup, it notes the size of the content being backed up, and estimates when it should make the next backup, in order to keep backups to an optimal size. It then sets the time interval before macOS should next call it to back up, before quitting. When that time comes round, one of three things can happen:

  • if it is ten minutes or less since the last backup, it will not make another backup, but set another time for the next backup, and quit;
  • if there is sufficient to merit making a backup, it will run the backup process as normal;
  • if there is insufficient due to be backed up, it will not make that backup, but set another time for the next backup, and quit.

It appears that an unanticipated period of high activity saving files may also trigger an early re-evaluation of whether a backup is due. So when you first start using your Mac after a long break (e.g. first thing in the morning, provided the Mac has been left running and not asleep), that may prompt an immediate backup.

I cannot be sure, but I think that these changes are part of the strategy for Optimized Storage, and may well depend on that being enabled. If you have turned Optimized Storage off, Time Machine backups may revert to the traditional hourly pattern.

backupinterval

The chart above shows a 24 hour period during which my Mac was left on, and did not sleep. Time proceeds from left to right, with the interval between starting backups shown on the Y axis. The time intervals between backups ranged from 45 to 380 minutes, being shorter when I was using my Mac, and longer when I was not. There does not appear to be any simple or direct correlation between the time interval and the amount actually backed up.

You can study this using your logs (as described here), or simply by watching the time of the next backup in the Time Machine pane.

I suspect that the main purpose in introducing this smarter backup timing mechanism is to accommodate backups to iCloud better. But in the absence of any documentation from Apple, this is only speculation at this stage.

I welcome your comments, and would be fascinated to know of the experience of others with backup timing and frequency in Sierra.