One of the new cmdlets added in Exchange 2010 SP1 is “New-MailboxRepairRequest”cmdlet. In earlier version of Exchange we could repair a mailbox with the Information Store Integrity Checker (Isinteg.exe) tool. To repair mailboxes, we needed to dismount the mailbox database on which that mailbox resided and run the fixes while the database was offline. Exchange 2010 SP1 introduces the New-MailboxRepairRequest cmdlet that allows you to detect and repair a corrupted mailbox while leaving the mailbox database online.
We can run this command against a specific mailbox or against a database. While this task is running, mailbox access is disrupted only for the mailbox being repaired. If you’re running this command against a database, only the mailbox being repaired is disrupted. All other mailboxes on the database remain operational.
The “CorruptionType” parameter in the New-MailboxRepairRequest cmdlet specifies the type of corruption that you want to detect and repair. The following types of mailbox corruptions can be detected and fixed with the New-MailboxRepairRequest cmdlet:
• Search folder corruptions (SearchFolder)
• Aggregate counts on folders that aren’t showing correct item count (AggregateCounts)
• Views on folders that aren’t returning correct contents (FolderView)
• Provisioned folders that are incorrectly pointing into parent folders that aren’t provisioned (ProvisionedFolder)
This example detects and repairs AggregateCounts for all mailboxes on mailbox database MBXDB11: New-MailboxRepairRequest -Database MBXDB11 -CorruptionType AggregateCounts
The output of New-MailboxRepairRequest will be a number of Event IDs with a source of “MSExchangeIS Mailbox Store” and you will need to watch for the following events related to a repair request “0044,10045,01146,10047,10048,10049,10050,10051,10059,10062”
All this information is based on the pre-release version of Exchange 2010 SP1