Take the 2-minute tour ×
Ask Different is a question and answer site for power users of Apple hardware and software. It's 100% free, no registration required.

Running on Mac OS X 10.7.4, issues list this seem to be riddled in Google searches but nothing like my issue, which persists even when I take all the steps. My story...

  1. Brought up Dashboard today and it would show but was locked up (e.g. unable to write in stickies, etc...).
  2. Brought up the "Activity Monitor" and saw one of two Dashboard processes was at 100% CPU usage. Tried killing both of them; they immediately restart with one at 100% CPU usage.
  3. Jump down to Terminal and try killing the processes in the shell via "kill". Same thing.
  4. Read it may be the .plist files so I remove:

    ~/Library/Preferences/com.apple.dashboard.*
    ~/Library/Preferences/com.apple.dashboard.client.*
    
  5. Reboot

  6. As soon as I bring up the Dashboard, it shows the outline of the 4 default widgets and they are locked up. CPU Usage is again at 100%.

UPDATE 10/1/12 morning

  1. Went to Genius Bar yesterday; genius solution: "Just don't use Dashboard; I never found it that useful." Really?! Okay no help there.
  2. Today iCal also is completely locking up on me... 100% hang! No, sadness!
  3. Took a snapshot with "Activity Monitor" and this was suspect:

    45 icu::TimeZone::getOffset(double, signed char, int&, int&, UErrorCode&) const  (in libicucore.A.dylib) + 157  [0x7fff8f6c109d]
    ???  (in libicucore.A.dylib)  load address 0x7fff8f6bc000 + 0xe1739  [0x7fff8f79d739]
    ???  (in libicucore.A.dylib)  load address 0x7fff8f6bc000 + 0xe1776  [0x7fff8f79d776]
    ???  (in libicucore.A.dylib)  load address 0x7fff8f6bc000 + 0xe17bb  [0x7fff8f79d7bb]
    etc...
    

    Throughout the process, it looks like whenever a TimeZone::getOffset call is made, it’s unable to load the dynamic library libicucore.

  4. I've learned that attempting to replace libicucore with a previous version will cause the Mac not to boot! Thank goodness for Cmd+R and terminal in the recovery tools. (I copied the original libicucore.A.dylib back and I can boot again, but still iCal and Dashboard hang.)

UPDATE 10/1/12 evening

  1. Just got off a great tech support call with Apple. We couldn't solve the issue but narrowed it down. (Things that didn't work: PR-RAM, Safe Mode, deleting ~/Library/cache, deleting ~/Library/Calendar.)
  2. Creating a 2nd user account on Mac showed iCal to work fine for that user. Something user based is the issue.

Fresh ideas anyone?

share|improve this question
    
The dashboard issue should be easy to troubleshoot - reboot in safe more (hold shift at start) and see. Start disabling widgets one by one (make a backup to restore your mac before starting) to isolate which of the processes is consuming CPU. This will be harder to isolate if you have other hangs, but next time you're at the Genius bar - ask how to do software isolation and you'll get further than asking them to tune your setup. Doesn't excuse the poor answer, but asking the right question helps get good results. –  bmike Oct 1 '12 at 16:11
    
Is the Mac set with the correct time and time zone? Even if it looks like it is set correctly, set it to another time zone and then back again. If you use NTP (time server) turn that off & back on again. –  IconDaemon Oct 1 '12 at 16:32
    
@bmike It's no one widget; the default widget set or empty widget set will cause Dashboard to exhibit this behavior. On top of this, iCal hangs too! –  tronster Oct 1 '12 at 17:51
    
@IconDaemon: Thank you for this suggestion, tried it out but alas, no change. –  tronster Oct 1 '12 at 17:52
    
One last hint before we edit this into "How do I isolate a software issue?" rather than "Why is X and Y borked?" 1) disconnect all network connections (forget passwords, pull cables, power off the router, etc...) 2) quit all apps so they do not relaunch 3) power off 4) safe boot - test briefly dashboard, then reboot normally (still no iCal and no network) - if you have a repeatable hang - you'll be able to attack it with the usual tools. –  bmike Oct 1 '12 at 18:00
show 2 more comments

1 Answer 1

Almost solved it...

Short answer: A corrupted calendar entry caused all the issues.

SOLUTION:
1) I found my main calendar and sorted it by days created.
2) I went through recent entries; some had invalid characters (Chineses unicode characters) for fields.
3) I deleted all entries from the last week (note tried starting up here and hang still occurred)
4) I then delete the "Calendar Cache" as well and it worked!
5) Widgets are working fine as well, as the iCal widget is happy again.

PROBLEM STILL OCCURS: Somewhere, some how the OS keeps re-generating the bad entries!

Apparently somewhere the OS is keeping another copy of the calendar and it would re-generate (with bad entries) the calendar if they were deleted.

If anyone knows how it's doing this (the journaled file system perhaps?) I'd love to know.

=====[ UPDATE 10/1 11:40pm EST ]===== Solved but man I don't wish this on anyone. So everything above is correct; my last issue was stopping the iCal Sync process from re-creating a bad cache file (with the invalid entries in it).

I could not solve how to stop the syncing from occurring or where the setting even is. (I turned off syncing in iTunes with my iPhone, but no difference.)

The final step...
Downloaded "SQLite Manager" for Firefox and opened up the "Calendar Cache". Then brushing off my SQL and poking around the tables, I found the few entries that had a negative start date and ran the query: UPDATE ZICSELEMENT SET ZDATESTAMP=309128967, ZENDDATE=303519600, ZSTARTDATE=303516000, ZTITLE="INVALID EVENT" WHERE ZSTARTDATE < 0
So far, so good... but really? ... All iCal has to do is validate the start and end times for entries to stop this from occurring. Or at the very least prevent sync from recreating the bad entries.

share|improve this answer
1  
Did any of the Apple people suggest running sysdiagnose to capture the process and memory status so that you can know exactly which processes are hung? –  bmike Jun 24 at 17:51
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.