Calendar Repair Assistant (CRA) is a new feature which came as part of Exchange 2010 RTM and has been enhanced in 2010 SP1. The main function of CRA is to make sure that there are no issues with calendar items in a user’s mailbox. It scans all calendar items (single and recurring ones) and checks both organizer’s and attendee’s calendar to make sure that there are no discrepancies. The purpose is to make sure recipients won’t miss meetings or have unreliable meeting information.
The CRA runs on the Mailbox server role and is a part of the Microsoft Exchange Mailbox Assistants service. All 2010 mailboxes are configured to run the assistant by default. The CalendarRepairDisabled parameter is set to false, which means that the feature is enabled. Running Get-Mailbox “name” | fl *calendar* confirms it
But, there is no schedule set on the mailbox servers to run CRA. This effectively means that the feature is disabled by default. Running Get-MailboxServer “name” | fl *calendar* shows the different settings associated.
In order to have this great feature do what it is supposed to do, a schedule needs to be set. In order to configure CRA to run from Saturday 19.00 till 23.00, the schedule format in the cmdlet should be Sunday.19:00-Sunday.23:00. You can also configure multiple time slots by giving the slots separated by commas. So, the command to set the schedule describe above is Set-MailboxServer “name” –CalendarRepairSchedule Saturday.19:00-Saturday.23:00
Running Get-MailboxServer “name” | fl *calendar* confirms that the schedule has been set.
Make sure that the schedule is set on all mailbox servers. The “CalendarRepairWorkCycle” parameter specifies the time span in which all mailboxes on the specified server will be scanned by the CRA. For example, if you specify five days for this parameter, the CRA will process all mailboxes on this server every five days. Calendars that have inconsistencies will be flagged and repaired according to the interval specified by the “CalendarRepairWorkCycleCheckpoint” parameter. For example, if you specify one day for this parameter, the CRA will query every day for new mailboxes that require processing. Set the parameters according to your requirements.
As you can see, the age limit for log files and the maximum size for the logs directory is set to unlimited. This should be changed in a production environment as it will eat the server space as time goes. I am not sure why Microsoft doesn’t set a schedule by default and keep the feature do what it is supposed to do!
Now that you know about Calendar Repair Assistant, set the schedule for CRA and let the helpdesk calls related to inconsistencies in calendar items (especially when using different platforms, say Mac & Windows) go away