Mac OS X 10.4.10: Damage in Pages and BBEdit

Posted by Pierre Igot in: Macintosh
July 2nd, 2007 • 12:13 pm

Computing can be a very cruel experience.

Here I was bragging about how stable my computing environment with Mac OS X 10.4.9 was, with 23 consecutive days of uptime and no sign of degrading performance…

At the time, I noted that I really had little incentive to install the 10.4.10 update and the security update that had come out a week earlier, simply because they would force me to restart my machine and rebuild my current work environment.

Well, yesterday, after a few more days of uninterrupted computing bliss, I decided that I should install those updates after all. I had been monitoring the usual Mac news web sites and, apart from a strange audio popping problem on some laptops, I hadn’t noticed any significant issues mentioned in the forums. So I went ahead with the update.

And that’s when Mac OS X decided to punish me.

The update process itself went smoothly. I applied the combo update, which I usually do, even when the current system version is just one digit below (10.4.9 in that case), simply because people usually report fewer problems with the combo updates. I also applied the security update at the same time, so that I wouldn’t have to do two restarts in a row.

As expected, the Mac Pro went through a double-reboot process, which has become a fairly common occurrence in recent times with Mac OS X 10.4 updates. (I do wish that Apple would explain why this is necessary and warn the user.)

After that, things appeared to be back to normal. I then proceeded to try and install the iTunes 7.3 update, and experienced a weird problem with the update package, which may or may not have been related to the system update.

I went to BBEdit to write a post about that, and at some point wanted to look up a word in the dictionary. So I right-clicked on the word in my BBEdit document and—bam! The application crashed. I relaunched BBEdit, tried again, and—I got a crash again. I tried with a blank document, with a new word. Same thing. Other aspects of BBEdit appeared to be working fine, but the contextual menus were suddenly unavailable, and trying to invoke them would cause a crash.

I tried removing the BBEdit prefs file and relaunching the application. It didn’t fix the problem.

Then for some reason I tried to launch Pages. Instead of the usual blank document, I got an alert saying, “Pages cannot open the ‘Blank.template’ template.” No explanation, no suggestion for troubleshooting, just a single “OK” button. Nice.

After clicking on “OK,” the Pages application stayed open, but trying to open any other Pages file—either document or template—would result in the same error message, with the same “OK” button and no alternative.

In other words, Pages was suddenly completely unusable.

Again, I tried trashing the prefs file, to no avail.

At that point, I was starting to suspect that something had gone very wrong with the system update. I tested a few other applications. Mail seemed to be working fine. So did iPhoto. Safari too appeared to be working. But when I tried to use Camino for web browsing, I noticed that the browser would systematically fail to complete its page downloads. There would be a flurry of downloading activity when first entering a web address or clicking on a link, but then the downloading activity would trickle down to 0 kbps and the page would never finish loading. I also noticed that Camino was crashing every time I tried to quit it.

Not good. I did a bit of research in the Apple Discussions forums (with Safari), but couldn’t find anything of note.

I finally tried reinstalling the Pages application from the original disc, and that didn’t fix the problem either. At that point, I was pretty sure that the system update had somehow hosed my system (at least in part), and decided that more drastic measures were required.

I rebooted from my Disk Warrior 4 CD (which takes an eternity, even on a Mac Pro), and repaired the startup volume’s directory. There were a few errors reported, but nothing major. I also repaired permissions on the startup volume. The repair process found a number of bad permissions, but as usual, it was hard to tell whether these had anything to do with the problem that I was experiencing. (There were no permission problems with the Pages application files, for example.) I checked the S.M.A.R.T. status of my hard drives, and everything appeared to be fine.

I rebooted from my startup volume, and—the problems in Pages and BBEdit were still there. Argh.

At that point, the obvious conclusion was that some system files had been damaged during the update process, and that those were system files that were not crucial enough to bring the entire system down, but still vital for Pages and—for some reason—for BBEdit’s contextual menu, and possibly for Camino’s downloading process. (Strange combination!)

The next step was unavoidable: I had to reinstall the entire system. But first I tried it on a separate hard drive partition that I had set aside a long time ago for future system testing. The partition was empty. I booted from my Mac Pro’s system disc (10.4.7) and installed a pared-down system (without all the bundled applications, except for iWork) on that partition.

I booted from that test partition and tried running Pages. Everything was fine. I tried opening existing Pages documents (on another partition) that I couldn’t open in my damaged 10.4.10 environment. They worked fine.

I then applied the 10.4.10 combo update to that test partition. Pages was still working fine after that. I applied the 2007-006 security update as well. Pages still worked. I finally updated Pages from 2.0.1 to 2.0.2, and it was still working after that.

This (lengthy) testing procedure was conclusive: In all likelihood, reinstalling Mac OS X 10.4 on my startup volume and reapplying the updates would solve the problem.

So I rebooted from the system disc and did an “Archive and Install” installation, with users and network settings preserved, and with a customized system without all the bundled applications, which were already there on the partition and which I was hoping wouldn’t be damaged. Everything went fine and I rebooted from the startup volume. Of course, a number of things (customizations and minor third-party hacks) were lost in the process (including my customized user icon, for some reason), but on the whole the system was working fine, it was pretty close to my normal work environment and, most important, Pages worked.

I then applied the 10.4.10 combo update. Worryingly, when the time came to reboot, I had a kernel panic. But I did a hard reset and things appeared to be working fine after that. I then applied the rest of the required updates, which went OK except for a couple of minor glitches (installer application hanging instead of showing the password dialog, some updates refusing to work the first time, etc.).

Pages still worked normally after all this, and so did the contextual menu in BBEdit.

All in all, it was a significant problem, but one which was not too painful to fix (although I still hate having wasted all that time on this). But the cruel irony, of course, is that it should happened so soon after I had written a very positive post about Mac OS X’s stability and reliability.

It’s hard to know what happened exactly, and whether there is anything that I can do in the future to avoid a repeat occurrence. I did not repair permissions before applying the system update, but I have yet to find conclusive evidence that this does help. I was reasonably careful not to use the computer much while the update was in the “Optimizing” phase, after having read what the Unsanity folks had to say about it.

I guess it was probably just bad luck, or maybe the fact that I am using a few third-party hacks that are not fully supported by Mac OS X and were running at the time of the update. Who knows?

I did notice a number of unusual messages in the console while the problems were happening (although of course I do not have the required expertise to properly analyse those messages). Here’s for example what the console said when I was trying to launch Pages:

2007-07-01 17:34:12.237 Pages[478] *** Assertion failure in -[NSMenu itemAtIndex:], Menus.subproj/NSMenu.m:713
2007-07-01 17:34:12.271 Pages[478] Failed to open document, but no unrecoverable error

Does it mean anything? I also see a number of things in the system log… In any case, I still have the logs, in case someone has any clue.


9 Responses to “Mac OS X 10.4.10: Damage in Pages and BBEdit”

  1. AlanY says:

    Wow, that sounds like a terrible experience.

    I would strongly suggest not applying the combined update when you don’t need to. Even though it seems to make intuitive sense, the safer route with software is usually to go with the most well-travelled path, because that’s the path that has been most heavily tested. The majority of people will be using the regular updater, and so that will have the heaviest coverage from a testing perspective. It probably won’t make any difference for files that are part of the updates, but for configuration/plist file updates, I can see a lot of complexity that gets introduced in the combined updater that isn’t present in the regular updater. That’s probably what went wrong for you.

    Fortunately, I haven’t had problems with 10.4.10, except for the odd little quirk that Apple Remote Desktop seems to list servers running 10.4.10 as running 10.4.9.

  2. Pierre Igot says:

    I have always used combo updaters, so I am not sure why all of a sudden it would have become a problem. Unfortunately, due to bandwidth limitations, I tend to download stand-alone updaters in a location other than my home office, especially when they are very large, so I always end up using a less-travelled route anyway. I also need to keep a local copy of the updater (for myself and for other people), so it makes much more sense to have the combo updater that will work with any version of 10.4.

  3. spectralhuman says:

    as an independant tech support guy, I update hundreds of macs… I have never had a problem installing an update. I have worked out this procedure over several years and it hasn’t failed me yet.

    step 1. reboot

    step 2. repair permissions

    step 3. run maintenance scripts using MainMenu (http://www.macupdate.com/info.php/id/17111)

    step 4. clean user cache using MainMenu

    step 5. Run diskwarrior

    step 6. Install update using combo updater.

    There are some other apps you can use to run maint. scripts and clean caches… onyx, cocktail, etc…

    I think the most important things to do are first reboot, repair permissions and run maint. scripts…

    Mac OS X is incredibly stable, but computers are “inherently unstable systems”™ and need to be rebooted at the very least before updates…

  4. won says:

    You can also try reinstalling the combo updater a second time.

    AppleJack can also be useful when weirdness strikes. For a deep cleanse that eliminates built-up grime, type applejack AUTO restart at single user startup (Command-s at reboot) after it’s installed.

    Anything that avoids the effort of a full reinstall is worth it for me (uh…anything free, that is :-).

  5. Pierre Igot says:

    won: I forgot to mention that I did try re-applying the combo update a second time. It didn’t help.

    Thanks for the additional information and tips.

  6. Daniel A. Shockley says:

    I run automated backups every night using SuperDuper, cloning the entire disk to an external drive. SD only updates what has changed, so it is quick, and it happens at 3:30 AM.

    I then apply System Updates and check things out, knowing that if something seems wrong, I can just do a copy the other way by booting off the external drive, as long as I do that before the next backup runs, and first grabbing my updated email folder (or any other new data files). This is also reassuring for potential data loss from drive failures, damage, theft, etc.

    External drives are cheap, and so is SuperDuper (or whatever you choose to use). An automated backup routine is worth at least 10 times what it costs in lost energy, anxiety, and especially lost information. I highly recommend it to everyone.

  7. swissfondue says:

    My solution isi to create a bootable mirror backup of my HD onto an external drive with Superduper!
    Then, all I need to do is copy this back to the HD. This way I keep all my preference settings, apps, serial numbers etc. and save a lot of time in case of update related issues.

  8. Andrew Aitken says:

    Sounds pretty bad – I hate it when things go wrong like that, especially after you’d just been bragging about the stability!

    I left Apple a few months ago, so I’m not on the front lines with any latest fixes for 10.4.10, and those log lines don’t give much detail about the cause of the problem – but I can offer some advice, just like everyone else!

    I always found it best to try things in a different user account before going onto an archive and install. You’d be surprised how a seemingly unrelated preference or cache file could cause problems. I’ve seen terminal preferences affect Adobe applications, and all sorts of other weird things… If it works in a new user, you’ve narrowed it down to something in your home folder (bar a few items in /Library/Caches) – If it still doesn’t work, then it’s almost certainly system related and archive and install is probably going to be quicker and more reliable than narrowing down the precise cause of the fault.

    Oh, historically I’ve always used the combo updates even for point upgrades, just to cover my back with customers. I’ve started just using software update myself now.

  9. Pierre Igot says:

    I am a SuperDuper! user too, although I do not use it to back up my entire startup volume. I only backup the user folders on the startup volume, and then all my documents, which are on another partition. I can see the idea of having a daily backup of your entire startup volume, but you still need to manually keep track of what you’ve done between the time of the last backup and the time you realize that your updated system has a problem. So it’s not a perfect solution either.

    Of course, an “Archive and Install” system replacement also has the disadvantage of breaking SD!’s automatic backup schedule. So that’s a bit of a pain.

    Andrew: It’s true that I probably should have tried to see if Pages and BBEdit were still working properly from within another user account. I’ll try to remember the next time something like this happens… which of course I hope will not be for another few years!

Leave a Reply

Comments are closed.