The iCal External Sync daemon allows non-Apple programs to access the contents of iCal. If this process is showing up with such high activity levels that could suggest several different things:
1. There is something going wrong with a 3rd party application you've installed which uses calendar information in iCal (Entourage, Outlook, MissingSync, PocketMac, etc.)
2. There is something wrong with the daemon itself.
3. There is something wrong with the iCal database which is in turn triggering the daemon over and over.
1. Disable syncing in any 3rd party programs you might have which talk to iCal.
2. Make an iCal backup: Click on each calendar on the left hand side of iCal 1 at a time highlighting it's name and then going to File Export > Export and saving the resulting calendar file to a logical location for safekeeping.
3. Remove the following to the trash and restart your computer:
Home > Library > Caches > com.apple.ical
Home > Library > Calendars > Calendar Cache, Cache, Cache 1, 2, 3, etc. (Do not remove Sync Cache or Theme Cache if present)
Home > Library > Preferences > com.apple.ical (There may be more than one of these. Remove them all.)
Home > Library > Preferences > ByHost >com.apple.ical (There may be more than one of these. Remove them all.)
---NOTE: Removing these files may remove any shared (CalDAV) calendars you may have access to. You will have to re-add those calendars to iCal > Preferences > Accounts.
---NOTE: To get to "Home > Library" in Lion:
4. Restart the computer.
5. Launch iCal and then quit it.
6. Check and see if the process is still showing up at high levels in activity monitor.
7. Assuming all is well at this point you can turn any 3rd party apps back on and see if the issue happens again. If it does, you know where your culprit lies.
Hope that helps!
I had a similar problem that iCalExternalSync often had a lot of CPU usage (and sent a lot of error messages to the console log) on OS 10.6.8.
I am not using MobileMe at all and as I found some errors containing hints on MobileMe, I found the following solution (which at least works for the moment):
in iSync.app go to Menu iSync/Preferences and disable the first checkbox "Enable syncing on this computer"
I noticed this high cpu usage and error messages each time when the iCal Alarm dialog came to the front.
So I created a test ical event which an alarm during the next minutes and watched what happened.
With the checkbox checked, iCalExternalSync went mad, without the checkbox checked; no problem.
Of course this does not help, if you really want to use MobileMe.
I add one other twist to this:
I went and checked the state of the Preferences in iCloud and compared it to my iCal and found out that "Enable Time Zone Support" was not checked in iCloud but checked in iCal.
I checked it in iCloud so both ends are now supposed to use Time Zone Support.
I then followed MadisonP's process and rebooted.
iCalExternalSync was non-existent in the activity monitor! Yeah!
This makes sense because I had deleted all 3rd party syncs other, non-Apple apps.
I then logged into iCloud via Chrome and Voila, iCalExternalSync appears in the Activity Monitor albiet much better behaved (3-15% CPU activity and then it stopped altogether in about 3 minutes).
This makes me suspect this process is also used for iCloud to iCal sync as well???
(Anyone at Apple that can confirm this?)