Bugs & Fixes: Safari web content maladies

If you’re running Safari 5.1, whether under Mac OS X Snow Leopard or Lion, there’s a good chance you’re not altogether pleased with how well it’s running. At least that’s the reaction I hear from many of my colleagues as well as what I see on numerous forum postings. From the myriad of reported Safari 5.1 issues, I’ve chosen to focus here on a pair of related problems.

Forced reloads

If you have multiple tabs open in a Safari window, you may find that when you click to change the active tab, the newly selected page temporarily goes blank as it reloads. Typically, at this point, the same reloading will occur for each and every tab that you subsequently select to view. The symptom doesn’t happen every time, and a few users report never seeing it at all. But many users (including myself) see it on a regular basis. As far as I know, this symptom never happened in prior versions of Safari.

In a few cases, when you attempt to access a Safari tab, a message may pop up warning you of impending forced reloading of pages: “Webpages are not responding. To visit the selected webpage, all webpages in the other tabs and windows must be force reloaded. Do you want to visit this page?”

The good news is that you can choose to decline the invitation to Visit Page, bypassing the forced reload of all pages. One posting in an Apple Support Communities thread claims that if you select Cancel and wait a minute or so, the webpage you are attempting to view should eventually appear anyway but without requiring that all other pages reload. I have not confirmed this however.

While this forced reloading is often only a minimal irritation, it can become quite annoying if pages do not quickly reload or if the content of a page has changed in the interim. If you have dozens of tabs and windows open, having them all reload is not a happy prospect even under the best of circumstances.

As best I understand it (which is not completely), this “feature” is an indirect consequence of the new way that Safari works in version 5.1. If you launch Activity Monitor, you’ll see two processes for Safari. Safari itself (just as has always been the case) and a new Safari Web Content process. As explained on a Wikipedia page, Web Content is the result of Safari 5.1 integrating WebKit2: “WebKit2 is designed from the ground up to support a split process model, where the Web content (JavaScript, HTML, layout, etc) lives in a separate process (Safari Web Content).” Safari Internet plug-ins and extensions, among other features, are run under the Web Content process. Apparently, Web Content is also responsible for the actual rendering of a webpage.

A beneficial result of this separation of processes is that if some Safari add-on crashes, it needn’t bring down the main Safari application. The downside is that, when a problem does occur, you may confront the “forced reloading” issue. On the other hand, if the alternative is a crash of Safari itself, forced reloading may be preferred.

Is there anything you can do to minimize these forced reloads? One strategy should be immediately clear: If you have a flaky plug-in or extension, disable it. If you’re not certain what particular add-on, if any, may be a culprit, you’ll need to do some trial-and-error experimentation.

A few forum postings suggest that increasing your computer’s memory may help avoid forced reloads. But most users (many of whom have 8GB or more of RAM installed) claim this is not the case. One thread suggests that, specific to Lion, the symptom may be related to the automatic termination feature that can quit processes which have been inactive for a period of time. The implication is that Safari Web Content quits at some point, leading to the forced reloads. There may be something to this. However, I have seen the forced reload symptom with Safari 5.1 in Snow Leopard—so automatic termination cannot be the entire story.

Runaway process

A second complaint about the Safari Web Content process is that its CPU percentage, as listed in Activity Monitor, can explode to enormously high levels, sometimes in excess of 100%. Even when Web Content’s CPU usage is at a manageable level, Real and Virtual memory listings can be quite high. I’ve seen memory levels exceed 2GB. When this occurs, everything in Safari (and sometimes everything on your Mac altogether) typically slows to a crawl. This has been confirmed in dozens of postings, such as a massive Apple Support Communities thread and a TUAW article.

As is often the case with these bugs, not all Safari users have the problem. Some users suggest that Safari add-ons are again the culprit, although others speculate it is an inherent memory leak in the Web Content process itself. If it’s the latter, adding more memory to your Mac will be of little, if any, benefit. Rather, it is something that Apple will have to fix in a Safari update. As a work-around, if you quit Safari and re-launch it (especially without re-opening all its previously open tabs and windows), the symptoms should temporarily go away.

recommended for you

Review: Safari 5.1

Read more »

Subscribe to the Best of Macworld Newsletter

Comments