FIX: BizTalk Server Incorrectly Logs the nError Code of 8 in the Document Tracking Database (322017)



The information in this article applies to:

  • Microsoft BizTalk Server 2002

This article was previously published under Q322017

SYMPTOMS

Although a reliable message is delivered successfully to the partner, the BizTalk InterchangeDTA database may display an "nError" code value of 8 in the dta_interchange_details table, which indicates that the message is still in the Retry queue. The correct nError for a successful reliable message interchange is 0.

CAUSE

Typically, BizTalk Server is configured to retry a message interchange several times when transmission failures occcur. When one transmission does not succeed, BizTalk Server logs an nError of 8. When a later transmission then succeeds, BizTalk Server does not update the nError field as expected.

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

A supported fix is now available from Microsoft, but it is only intended to correct the problem that is described in this article. Apply it only to computers that are experiencing this specific problem. This fix may receive additional testing. Therefore, if you are not severely affected by this problem, Microsoft recommends that you wait for the next that contains this hotfix.

To resolve this problem immediately, contact Microsoft Product Support Services to obtain the fix. For a complete list of Microsoft Product Support Services phone numbers and information about support costs, visit the following Microsoft Web site:NOTE: In special cases, charges that are ordinarily incurred for support calls may be canceled if a Microsoft Support Professional determines that a specific update will resolve your problem. The typical support costs will apply to additional support questions and issues that do not qualify for the specific update in question.

The English version of this fix has the following file attributes or later:
   Date         Time   Version      Size    File name
   --------------------------------------------------
   29-Apr-2002  15:06  3.0.1513.0   172,304 BizTalkHTTPReceive.dll
   29-Apr-2002  15:06  3.0.1513.0   127,248 CisAPI.dll
   29-Apr-2002  15:06  3.0.1513.0   508,176 CisCore.dll
   29-Apr-2002  15:06  3.0.1513.0   237,840 CisDTA.dll
   29-Apr-2002  15:06  3.0.1513.0   401,680 CisEngine.dll
   29-Apr-2002  15:06  3.0.1513.0   672,016 CisParser.dll
   29-Apr-2002  15:06  3.0.1513.0    20,752 CisPerf.dll
   29-Apr-2002  15:06  3.0.1513.0   450,832 CisSerializer.dll
   29-Apr-2002  15:06  3.0.1513.0   184,592 SerializeDoc.dll
   29-Apr-2002  15:51  3.0.1513.0   499,984 SharedComp.dll
   29-Apr-2002  15:06  3.0.1513.0   463,120 ValidateDoc.dll
   29-Apr-2002  15:06  3.0.1513.0   327,952 MSCIS.exe
   11-Apr-2002   9:41                13,689 BTM_PriorityUpgrade.sql
   11-Apr-2002   9:41                19,632 SQ_PriorityUpgrade.sql
				

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.

MORE INFORMATION

This fix adds a new registry value to turn off BizTalk Server logging of an nError of 8 for reliable messages.

The registry key path is:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\BTSSvc

The key value is named:

DTANoXmitAttemptErrorForRelMsg

If this registry key exists and it has a value of 1, BizTalk Server does not log the nError of 8 on the dta_interchange_details record when the transmission does not succeed. Instead, it logs an nError of 0. will BizTalk Server only logs an nError of 9 on the dta_interchange_details record when all retries have been used up. An nError of 9 means that the message interchange was not successful even after all the retries.


To apply the fix, follow these steps:
  1. Quit BizTalk Server Messaging.
  2. Copy BizTalkHTTPReceive.dll to the \BizTalk Server\Http Receive folder and to any other locations to which this file was copied on the file system. This file is frequently copied to multiple locations and you have to update each location.
  3. For each BizTalk server: Copy Sharedcomp.dll to \Program Files\Common Files\Microsoft Shared\Enterprise Servers\Commerce; Copy all other files to the \BizTalk Server folder.
  4. Use SQL Query Analyzer to apply BTM_PriorityUpgrade.sql to the Interchange_BTM database.
  5. Use SQL Query Analyzer to apply SQ_PriorityUpgrade.sql to the Interchange_SQ database.
  6. Restart BizTalk Server Messaging.
You have to upgrade all servers that are sharing the databases. Any servers with the old files will not start after you update the Interchange_BTM and the Interchange_SQ databases.

Modification Type:MinorLast Reviewed:10/11/2005
Keywords:kbHotfixServer kbQFE kbBizTalk2002SP1fix kbbug kbfix KB322017 kbAudDeveloper