Applies ToCommerce Server 2009 R2 Standard Commerce Server 2009 R2 Enterprise

Symptoms

Consider the following scenario:

  • You install the Commerce Server Adapters for BizTalk Server on a computer that is running Microsoft BizTalk Server. These adapters are included in Microsoft Commerce Server 2009 R2.

  • You create and configure an Orders receive location for an endpoint by using the BizTalk Adapter for Orders to receive orders from Commerce Server 2009 R2.

In this scenario, the receive location for the endpoint may stop processing messages intermittently. This condition continues until the endpoint is restarted.Additionally, an error message that resembles the following is logged in the Application log:

Event Type: ErrorEvent Source: BizTalk Server 2009Event Category: BizTalk Server 2009 Event ID: 5673Description:The Messaging Engine received an error from transport adapter "adapter_name" when notifying the adapter with the BatchComplete event. Reason "Object reference not set to an instance of an object."

Note The adapter_name placeholder in this error message is the name that you specified for the BizTalk Adapter for Orders in BizTalk Server, such as Commerce Server Orders.

Cause

This problem occurs because an infinite waiting state may occur when BizTalk Adapter for Orders does not receive signals from other parties during a transaction. When this occurs, the adapter stops polling Commerce Server Order Web Services.

Resolution

To resolve this problem, apply this hotfix. After you apply this hotfix, a new registry entry is introduced for you to configure the transaction time-out value for BizTalk Adapter for Orders. To enable this hotfix, see the Enable the hotfix section.

Hotfix information

A supported hotfix is available from Microsoft. However, this hotfix is intended to correct only the problem that described in this article. Apply this hotfix only to systems that are experiencing the problem described in this article. This hotfix might receive additional testing. Therefore, if you are not severely affected by this problem, we recommend that you wait for the next software update that contains this hotfix.If the hotfix is available for download, there is a "Hotfix download available" section at the top of this Knowledge Base article. If this section does not appear, contact Microsoft Customer Service and Support to obtain the hotfix. Note If additional issues occur or if any troubleshooting is required, you might have to create a separate service request. The usual support costs will apply to additional support questions and issues that do not qualify for this specific hotfix. For a complete list of Microsoft Customer Service and Support telephone numbers or to create a separate service request, visit the following Microsoft website:

http://support.microsoft.com/contactus/?ws=supportNote The "Hotfix download available" form displays the languages for which the hotfix is available. If you do not see your language, it is because a hotfix is not available for that language.

Prerequisites

To apply this hotfix, you must have the Commerce Server adapters for BizTalk Server installed.

Enable the hotfix

To enable this hotfix, follow these steps:

  1. Restart the endpoint.

  2. Apply this hotfix.

  3. In the registry, locate the following subkey:

    HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\CommerceServer\9.0\BizTalk Adapters\Orders\subkeyNote In this case, the subkey placeholder is the value that is specified in the Transport Properties of the Order Receive location.

  4. Add the following registry entry and value to the subkey:

    String Value name: TransactionTimeoutMinutesString Value data: 5Note When you set the time-out value for TransactionTimeoutMinutes, do not set the value too small. Make sure that you set the value to be greater than the Microsoft Distributed Transaction Coordinator (MSDTC) time-out value. If you set the value too small, a time-out might occur before the BizTalk Server can finish processing the orders. Also, do not set the value too large, because the adapter will wait that long before it times out and continues.

After you enable this hotfix, an error message that resembles the following is logged in the Application log when a transaction time out occurs:

Log Name: ApplicationSource: Commerce Server Orders Receive AdapterDate: datetimeEvent ID: 0Task Category: NoneLevel: ErrorKeywords: ClassicDescription:SubmitBatch: Transaction timeout occurred with timeout value of 300000

Note The time-out value in this error message is in milliseconds.

Restart information

You do not have to restart the computer after you apply this hotfix. However, you must restart the BizTalk host instance after you apply this hotfix.

Replacement information

This hotfix does not replace a previously released hotfix.

File information

The English version of this hotfix has the file attributes (or later file attributes) that are listed in the following table. The dates and times for these files are listed in Coordinated Universal Time (UTC). When you view the file information, it is converted to local time. To find the difference between UTC and local time, use the Time Zone tab in the Date and Time item in Control Panel.

File name

File version

File size

Date

Time

Platform

Microsoft.commerceserver.adapter.orders.receiveadapter.dll

9.0.4260.217

51,864

18-Feb-2013

20:28

x86

Note Because of file dependencies, the most recent fix that contains these files may also contain additional files.

Status

Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.

More Information

If you want more information about the BizTalk Server adapters, go to the following Microsoft Developer Network (MSDN) webpage:

Commerce Server Adapters for BizTalk Server

Need more help?

Want more options?

Explore subscription benefits, browse training courses, learn how to secure your device, and more.

Communities help you ask and answer questions, give feedback, and hear from experts with rich knowledge.