Pixel Envy

Written by Nick Heer.

Questions About the Reliability of Scheduled Tasks in MacOS Sierra

Howard Oakley (via Michael Tsai):

Some time after 2011, it appears that Apple started moving its own scheduled and background services, like Time Machine backup, to use a novel dispatching system involving two services, Duet Activity Scheduler (DAS) and Centralised Task Scheduling (CTS), the latter being intimately related or a part of the lightweight communication and dispatching system XPC. No one outside Apple seems to know when this happened, as DAS and CTS are almost completely undocumented.

In Sierra, the DAS and CTS dispatching system now manages more than seventy activities at most times, one of which is Time Machine’s scheduled backups. However, in Sierra at least, this system has a bug which results in its breakdown: backups suddenly become irregular or stop altogether, and the other activities also become unreliable.

My MacBook Air is nearly always connected to power and my Thunderbolt Display which, in turn, is connected to an external hard drive. This drive is partitioned down the middle, with half being used for Time Machine and the other half holding my iTunes library.1 When I’m at my desk, I’m almost always listening to music, which means that this drive is almost always mounted. I would notice if this drive were unplugged.

And, yet, I received a notification last night that my Mac had not been backed up in thirteen days. Thirteen days is a long time for a computer to not be backed-up; I would have expected a notification sooner than that.2 A reboot of my Mac fixed this for me, but two things: requiring a restart to work around a bug like this seems a bit Windows-y, and a bug that prevents Time Machine from working consistently is a very serious bug indeed. I don’t know for absolute certain whether I ran into this specific bug, but I have used Time Machine since Leopard was released and I have never had anything like this happen to me before.

In fact, the only reason I restarted in the first place is because I remembered reading this on Tsai’s blog during the day yesterday — ironically, for a bug in MacOS’ scheduling system, the combination of Tsai’s post and encountering the bug was timed absolutely perfectly.

  1. Each partition is also cloned regularly via Super Duper. I recognize that this is not a backup system of the highest integrity. I’d like to go offsite, but I have serious reservations about Backblaze’s fiddling with file metadata. Update: More from Michael Tsai on Backblaze (scroll to the bottom of the post). ↩︎

  2. It’s definitely possible that I did get notified earlier but I missed it, for some reason. ↩︎