Mojave may make Macs molasses

It happened to me too: when my Mac started up after upgrading to Mojave, everything went slow. Dead slow. You could go and make a cup of coffee whilst an app started up, as it bounced away in the Dock for a good minute or two. Copying over large files using File Sharing was actually slower than downloading them from the internet.

These problems are most common when:

  • upgrading from an earlier version of macOS than High Sierra;
  • upgrading a startup Fusion Drive;
  • upgrading a startup drive encrypted with FileVault;
  • the disk being upgraded has been backed up using Time Machine, which was active immediately prior to upgrading;
  • the disk being upgraded has many files on it, perhaps millions, rather than a basic installation;
  • you start the upgrade with several large incompatible updates available in the App Store.

In my case, I scored 5 out of 6.

In most cases, the reason for this molasses-like behaviour isn’t a failed install, neither is it a bug in Mojave or its installer. If you rush in and restart in Recovery mode, you won’t be able to fix it, because much of what is going on is actually normal behaviour.

FSEvents

Each time that Time Machine makes a backup, it only copies files which have been changed since the last backup. Traditional backup systems used to have to scan every file on a disk to discover which had changed datestamps since the previous backup, but Time Machine cheats: it uses a hidden and locked-away database of File System Events, FSEvents, stored in the .fseventsd folder at the root level of each volume.

When you have Time Machine backup active immediately prior to upgrading to Mojave, once the upgrade is complete the first backup will start. One of its early tasks is to check whether it can use those FSEvents databases, and there’s a good chance after the Mojave upgrade that won’t be possible. This is made more likely by the first three of the factors listed above, particularly if your startup volume is a Fusion Drive which has just been converted to APFS.

Deep scan

What happens when Time Machine can’t use the FSEvents database is that it then performs a ‘deep scan’ or traversal, in which the datestamps of all files are checked against an earlier record, and a new database is built. Inevitably, the more files there are on a volume, the longer that deep scan will take. Mojave can accelerate this process on APFS volumes by examining snapshots rather than the whole file system, but this still takes time.

molasses01

This process is shown in the log extract above. I ran a final manual backup at 1842 on 11th, following which I upgraded that Mac to Mojave. That was complete by 2002, when the first automatic backup started. Time Machine then found a problem in trying to use the old FSEvents database, so at 2003 started performing a ‘deep event scan’ to construct its new FSEvents database.

I manually cancelled that backup by turning Time Machine off at 2206, and re-enabled automatic backups, the first of which started at 0039 on the 12th. That backup again started to perform a deep event scan, which completed after just under 8 minutes. Time Machine then wrote an event cache in the latest backup folder, and got on with performing that backup.

While your Mac is performing this deep event scan, it will behave very sluggishly, but once that is done and the first backup is complete, responsiveness should return to normal. You can postpone making that backup by cancelling it or switching off automatic backups, as I did above, but sooner or later it will have to be made, or you simply won’t get any more Time Machine backups.

molasses02

You can detect deep event scans in the log in Consolation 3, or using The Time Machine Mechanic (T2M2). They are reported in the log as (for example)
11 20:03:57.050243+0100 Info TMLogInfo backupd TimeMachine Deep event scan at path:/Volumes/com.apple.TimeMachine.localsnapshots/Backups.backupdb/Howard’s iMac/2018-10-11-200353/Macintosh HD reason:must scan subdirs|new event db|
or in T2M2 as
completed 1 deep traversal scans,
but only when they’re finished.

Unless you urgently need access to your Mac, leave it to get on with a deep event scan, as that will enable it to make its first proper backup since the upgrade. If Time Machine can’t conduct the smaller and more efficient form of event scan, and has to iterate through everything on your startup disk, that can take several hours.

There were similar issues when upgrading to High Sierra, and one side-effect is that they make it very difficult to have a dual-boot system which also makes Time Machine backups. With Mojave, you should be able to dual-boot with High Sierra (I did that a lot during Mojave’s beta-testing), although that may still not work well if either macOS also runs Time Machine.

Previously incompatible updates

If you performed the upgrade to Mojave when there were incompatible updates for that Mac in the App Store, they are likely to be automatically downloaded once Mojave is up and running. If these include huge apps like Xcode, this will occupy your Mac and take plenty of its internet bandwidth for some time to come.

You can try turning off the option to Download new updates when available, in the Advanced setting in the Software Update pane, but they may keep coming once the download has started. For large updates, I recommend that you download them manually in the Updates section of the new App Store app.

Disk maintenance

The version of APFS which comes in Mojave is new to all Macs, unless they have had Mojave betas installed earlier. Expect it to perform some housekeeping tasks during the first few hours after the upgrade. In particular, it may result in some bursts of sustained hard disk activity, which can affect performance of recently-converted Fusion Drives, for example. These should settle over the first day of running Mojave.

Changed Fusion Drive performance

After conversion to APFS, Fusion Drives work differently from the way that they did when using CoreStorage and HFS+. When your Mac writes to a Fusion Drive, it now uses the SSD component as a cache.

If you try copying or moving very large files to a Fusion Drive in APFS format, you may find that this proceeds slowly at the very start, then becomes much quicker as the file(s) are written to the SSD. If the file(s) are large enough relative to the available cache, write speed may fall again later, as previously-cached data has to be transferred to the hard disk within the paired drive system. Your experience may vary.

Conclusions

Upgrading to Mojave brings major changes to many Macs. For an iMac with a large Fusion Drive full of files, these changes often require follow-up processes such as a deep event scan. When your Mac first starts up after upgrading to Mojave, don’t expect it to immediately carry on exactly as before.

Give it at least 12 hours, perhaps as long as 24, with periods spent free of user-imposed tasks. If it’s still as slow as molasses after that, then you may need to look harder to find out what is wrong.