Microsoft KB Archive/824998

From BetaArchive Wiki

Article ID: 824998

Article Last Modified on 7/31/2003



APPLIES TO

  • Microsoft BizTalk Server 2002 Standard Edition



IMPORTANT: This article contains information about modifying the registry. Before you modify the registry, make sure to back it up and make sure that you understand how to restore the registry if a problem occurs. For information about how to back up, restore, and edit the registry, click the following article number to view the article in the Microsoft Knowledge Base:

256986 Description of the Microsoft Windows Registry


SYMPTOMS

Documents that are being sent from BizTalk Messaging to BizTalk Orchestration can become stranded in the private MSMQ queue that temporarily houses these documents in the event of a catastrophic failure such as a power outage. When these documents are stranded in the private MSMQ queues, they will remain stranded even after the BizTalk Server is restored to working condition.

CAUSE

When you bind a BizTalk Messaging Port to an XLANG schedule, the mechanism by which documents are passed to the schedule is referred to as the Orchestration Activation Component (OAC). The OAC writes the document that was being processed by the BizTalk Messaging engine to a private MSMQ queue, and then instantiates the schedule that is bound to the Messaging Port. The schedule in turn retrieves the document from the MSMQ queue. Once the schedule picks up the document from the queue, the queue is deleted. If a catastrophic failure occurs after the OAC writes the document to the MSMQ queue but before the OAC instantiates the corresponding schedule, the document will become stranded in the queue even after the server is restored.

This problem can occur because the OAC does not persist a record of the process of writing a document to the MSMQ queue. Therefore in the event of a failure, upon recovery the OAC does not know that it is supposed to instantiate a schedule to pick up any documents that it may have previously written to the MSMQ queue.

RESOLUTION

Service Pack Information

To resolve this problem, obtain the latest service pack for Microsoft BizTalk Server 2002. For additional information, click the following article number to view the article in the Microsoft Knowledge Base:

815781 How to Obtain the Latest BizTalk Server 2002 Service Pack


Hotfix Information

To resolve this problem, obtain the latest service pack for Microsoft BizTalk Server 2002. For additional information, click the following article number to view the article in the Microsoft Knowledge Base:

815781 INFO: How to Obtain the Latest BizTalk Server 2002 Service Pack


MORE INFORMATION

WARNING: If you use Registry Editor incorrectly, you may cause serious problems that may require you to reinstall your operating system. Microsoft cannot guarantee that you can solve problems that result from using Registry Editor incorrectly. Use Registry Editor at your own risk.

  1. Start Registry Editor (Regedt32.exe).
  2. Locate, and then click the following key in the registry:

    \HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\BizTalk Server\1.0\XLANG Scheduler

  3. On the Edit menu click Add Key , and then add the following registry key to the registry:

    Value name: SafeInstantiateAllSkeds
    Radix: Decimal
    Value data: 1

  4. Quit Registry Editor.



This registry entry will cause the OAC to maintain a record of all documents that it writes to the private MSMQ for pickup by the corresponding XLANG Schedule. This will allow the OAC to ensure that it can instantiate a schedule for any documents that are stranded in the event of a catastrophic failure.

STATUS

Microsoft has confirmed that this is a problem in the Microsoft products that are listed at the beginning of this article. This problem was first corrected in Microsoft BizTalk Server 2002 Service Pack 1.

Keywords: kbfix KB824998