This article has been archived. It is offered "as is" and will no longer be updated.
This article describes an issue that occurs in Microsoft BizTalk Server 2004. The issue occurs when you create a custom pipeline component to handle large messages.
BizTalk Server 2004 can process very large messages. For example, a large message may be 100 megabytes (MB) or more. To make this possible, all pipeline components work by streaming the message.
When you create a custom pipeline component that implements a custom stream for use in the BizTalk Server 2004 environment, the stream that you create must be able to seek back to the beginning of the stream. This must occur if you want to suspend or to track a message.
If the message stream is non-seekable, and if the processing of a large message fails, the part of the message before the current position of the stream is not recoverable. Therefore, the actual body of the message is not persisted in the database. Also, you cannot suspend the message or track the message because the data is not available. The message stream is at the end. The message stream cannot be set back to the beginning.
If the message stream is seekable, BizTalk Server 2004 suspends the message. BizTalk Server 2004 sends a success code to the adaptor that indicates that BizTalk Server 2004 has ownership of the data.
For additional information about BizTalk Server 2004, visit the following Microsoft Web site: