Exchange 2010 – Background Cleanup Failed (Event ID: 10001)

Let me make a short look at the following error:

Log Name: Application
Source: MSExchangeIS Mailbox Store
Date: 3/9/2013 7:21:21 PM
Event ID: 10001
Task Category: Background Cleanup
Level: Warning
Keywords: Classic
User: N/A
Computer: ExCas32.lifa.intra
Mailbox cleanup could not completely remove the mailbox for user 9e7c5f65-9cdd-44d9-af51-d2b16b786157 (Root Fid 6fa-4FD75D76E9) following mailbox removal. Encountered error 0xfffffae8. Should this message continue to persist for the same mailbox, it may be indicative of a problem that requires further investigation.

This event usually indicates failed cleanup process which cannot clean corrupted fields in the mailbox database. It is mainly related to mailbox moving (either for the source database with SoftDeleted mailbox, the destination database or both of them). It can occur also for the moving which was completed successfully.

How to stop this event?
In many cases this problem has been resolved by dismounting and mounting the database. If there are many databases having the problem restart of IS service or reboot the computer could help also.

How to find the affected database?
It could be achieved through ExchangeGuid from the event 018e1b17-524c-4ee6-958c-2d8721d3714d.

Get-Recipient -Identity "9e7c5f65-9cdd-44d9-af51-d2b16b786157"

If you do not have a success, you can try to use LDAP Query:

Get-ADObject -LDAPFilter "(&(objectclass=*)(msExchMailboxGuid=\65\5f\7c\9e\dd\9c\d9\44\af\51\d2\b1\6b\78\61\57))"

How to specify ExchangeGuid for LDAP Query:

  1. Original GUID from the Event Log: 9e7c5f65-9cdd-44d9-af51-d2b16b786157
  2. Divide it with backslashes: \40\34\19\4C\21\C1\4D\C1\95\1D\65\13\20\57\7A\N0
  3. Invert the first 3 columns (9e7c5f65-9cdd-44d9): \4C\19\34\40\C1\21\C1\4D\95\1D\65\13\20\57\7A\N0

Source: How to find the Object that belongs to a GUID

If you do not have the success again, you can try to re-mount all active/mounted mailbox databases on reported server from the event:

$dbs = Get-MailboxDatabase | where {$_.server -like "ExCas32.lifa.intra"} 
$dbs | Dismount-Database
$dbs | Mount-Database