This blog post discusses Transport's use of the Temp Table folders during message processing (specifically during bifurcation) and mentions some common examples and scenarios in which Temp Tables gets used by Transport during bifurcation. Bifurcation is a process where Transport splits a message into multiple copies when required, for example during Distribution Group Expansion. There are few Support scenarios where deeper level knowledge about Transports' use of the Temp Table folders, physical persistence of messages within Exchange Server system, and which mail flow scenarios utilizes Temp Tables, can be very useful. For example, few of the more common of these scenarios are where duplicate/multiple messages may be send by the Exchange Server due to messages being stuck/orphaned inside Temp Table folders, conversion problems, and in rarest of circumstances where Admins believe that Messages have disappeared on the Exchange Server. But before we want to talk about Transport's use of the Temp Table folders, to put things in proper perspective let's discuss some of the related topics briefly, for example, Store Driver, SMTP System Mailbox, and Temp table itself.
When we look at messages in Exchange System Manager (ESM) Queues, we are merely looking at an in memory object representing the message. This object or memory structure is called IMsg (or IMailMsg). IMsg can be best described as a header + Pointer. Header is the Message header and pointer points back to the file system (NTFS or ExIFS) where the message physically persists. The messages themselves (along with many message properties like the 2821 properties, categorizer status, retry status, submission time, etc) are stored either on the disk (NTFS - Queue folder) or in the Information Store's SMTP mailbox / Temp tables (ExIFS). Where the message physically persists depends on where the message came from: