As part of Exchange installation SMTP system mailbox is created on all Exchange servers (2000/2003/2007). This mailbox is used to hold "unprocessed" or "waiting to be processed" mail queue items. The word "SMTP Temp Table" simple means "Sub Folders" in SMTP mailbox. These sub folders are created in the mailbox by the system.
Anti-virus and SPAM software usually checks SMTP temp table for any mails to process. If you have bug in your third-party software (e.g., Anti-virus), mails may stuck in SMTP temp table, resulting mails are not get delivered or delayed. For some reason, if Anti-virus software missed some mails during mail scanning process (service crash), the mails will sit in SMTP Table till the SMTP service is restarted. These mails won’t be re-queued automatically.
Another big thing is when Exchange server is rebooted, some old mails are sent out. These old mails were stuck in SMTP temp table for years for many reasons when you restart the service or reboot the server, these mails processed again on the start-up.
To fix the issue, obviously you need to find out the root cause. The following information describes how to open the SMTP Temp Table and check for stuck mails.
1. First you need MFCMAPI application. Download it here: Microsoft Exchange Server MAPI Editor. After you download, extract the contents to a known location. You should be logged on the computer with Exchange Administrator privileges.
2. Double Click MFCMapi.exe to run the program. Click OK to the help screen.
3. Click "Session" menu and select "Logon only (Does not display stores)". Select the Outlook profile. This profile user must be a Exchange Administrator.
4. Click "MDB" menu and select "Get Mailbox Table…"
5. Click OK button on "Display Server Mailbox Table" Window (by leaving the default values selected).
6. Click "Display Name" column name to sort by Display Name in "Mailbox Table" window. Find SMTP (Exchange Server Name-{UniqueID}) mailbox. Note: There might be multiple SMTP mailboxes. You may want do the procedure for all SMTP mailboxes to find the issue.
7. Double Click on the SMTP (Exchange Server Name-{UniqueID}) mailbox to open it.
8. Expand the "Root Container" in SMTP (Exchange Server Name-{UniqueID}) window.
9. Expand "TempTable#1" and you will see many sub folders listed as numbers.
10. Click to select a Numbered folder (e.g., #1) and watch the status bar of the window for "Contents". If contents shows zero, obviously there is no contents. If you have any issues, you will see number of mails stuck in particular TempTable. Go through all the SMTP temp tables and look for number of contents.
11. If you see any contents on any table, just double click to open it. You will see stuck mails. Right click on the stuck mail, you will get many options.
Well, Above procedure only shows what’s inside the SMTP Temp Table. You may need to track a particular stuck e-mail in Exchange system manager and search event logs for any clues.
P.S. Make sure you increase the level of diagnostic logging on your Exchange servers. For details look here: Exchange Diagnostic Logging
Gook Luck!