I ran into a 6 GB+ mailbox recently. And to boot, it had roughly 140,000 items in the inbox. Ponder that a little to yourself. What kind of impact do you think such a mailbox would have on your Exchange server? No matter how overbuilt it is, you’ll notice that in terms of memory usage, disk usage, log file growth and undoubtedly other areas.
The next problem is, how do you deal with such a mailbox? If you try to interact with it, Outlook is bound to crash. Downloading said inbox into an OST would just kill a connection. Luckily for me OWA worked. It parsed the madness into 50 item chunks to view. Just deleting said items will generate a metric Ton of transaction logs, could crash your mailbox server if you aren’t careful. I won’t get into the process that was generating the mail, but leave it to be that said process would, if allowed, open each message and process then delete it. I would just have to configure permissions to allow said processing. The last thing about it would be that mail, if configured, would continue to flow into said mailbox, to be opened, processed and deleted.
Having discussions with some colleagues, it was suggested that we create a new storage group, on which we configure circular logging, and this mailbox would live in said SG. This solves the problem of transaction logs filing the drive and crashing the system and also enables a single DB that has to be managed in terms of grown and size and reclamation of unused space.
If we trust the process to remove content after processing, then we can forgo a mailbox policy to remove data after a period of time. If we don’t trust the process, we must create and implement a managed folders policy on this mailbox.
A few things to mention:
- Exchange 2007 doesn’t give you a graphical interface to see mailbox size across a server or even a storage group or for that matter a mailbox store. Many resource exist to find out what to do to get this data, but here is one I like, please watch line wrap and replace <server name> with your mailbox server.; ‘Get-MailboxStatistics -server <servername>| Sort-Object TotalItemSize -Descending | ft DisplayName,@{label="TotalItemSize(MB)";expression={$_.TotalItemSize.Value.ToMB()}},ItemCount’
- When you do end up cleaning up this much mailbox data, be prepared to offline defragment the mailbox store that it used to be housed in. Microsoft reference for eseutil /d http://technet.microsoft.com/en-us/library/aa997972(EXCHG.80).aspx
- Be prepared to look at your exchange backup/archival solution and clean up any mess such a mailbox created.
I hope my knowledge helps you if you ever encounter such a mailbox.