Microsoft KB Archive/941051

= FIX: A time-out error may occur when you use the BizTalk Adapter for Oracle Database as a receive adapter =

Article ID: 941051

Article Last Modified on 10/18/2007

-

APPLIES TO


 * Microsoft BizTalk Adapter for Oracle Database

-



Important This article contains information about how to modify the registry. Make sure that you back up the registry before you modify it. Make sure that you know how to restore the registry if a problem occurs. For more information about how to back up, restore, and modify the registry, click the following article number to view the article in the Microsoft Knowledge Base:

322756 How to back up and restore the registry in Windows XP and Windows Vista



SYMPTOMS
Consider the following scenario:
 * You use the Microsoft BizTalk Adapter for Oracle Database as a receive adapter.
 * You use this receive adapter to poll data in the back-end Oracle database.
 * You submit the result message to BizTalk Server.

In this scenario, a time-out error may occur. This error may occur if one of following conditions is true:
 * A BizTalk Server routing error occurs on the computer that is running BizTalk Server.
 * The computer that is running BizTalk Server is currently under heavy work load or is processing messages that are very large.

When the time-out error occurs, three event messages may be logged in the Application log. The source of these events appears as &quot;Microsoft BizTalk Adapters for Enterprise Applications.&quot; The descriptions of these events appear as follows:

Description 1

I-OAP0023: Failure to notify for OracleDb://orasvr/SCOTT/Tables/TESTTBL/TableChangeEvent.

Description 2

I-OAP0029: Routing of OracleDb://orasvr/SCOTT/Tables/TESTTBL/TableChangeEvent returned with an exception. Verify the log for the reason.

Description 3

System defined exception

Call to TableChangeEvent@SOAP://xmlns/schemas.microsoft.com/TESTTBL/TESTTBL:Binding

FaultCode = Time out waiting for poll

Time out waiting for poll

User data was returned in the 'detail' field but the fault type called 'detail' could not be found.

This occurred in response to method 'TableChangeEvent'.



CAUSE
This problem occurs because the BizTalk Adapter for Oracle Database has a default time-out period of 30 seconds. If BizTalk Server does not receive the poll data before the time-out period expires, a time-out error occurs. The following known issues can cause this problem:
 * The adapter does not handle the BizTalk Server routing error correctly.
 * Some operations may cause BizTalk Server to take more than 30 seconds to obtain the result message. For example, when the result message for the poll is processed in a custom pipeline, the message may take longer than 30 seconds to process. Therefore, BizTalk Server does not receive the message before the time-out period expires.



Hotfix information
Warning Serious problems might occur if you modify the registry incorrectly by using Registry Editor or by using another method. These problems might require that you reinstall the operating system. Microsoft cannot guarantee that these problems can be solved. Modify the registry at your own risk.

A supported hotfix is now available from Microsoft. However, it is intended to correct only the problem that is described in this article. Apply it only to systems that are experiencing this specific problem. This hotfix may receive additional testing. Therefore, if you are not severely affected by this problem, we recommend that you wait for the next BizTalk Adapter for Oracle Database service pack that contains this hotfix.

To resolve this problem immediately, contact Microsoft Customer Support Services to obtain the hotfix. For a complete list of Microsoft Customer Support Services telephone numbers and information about support costs, visit the following Microsoft Web site:

http://support.microsoft.com/contactus/?ws=support

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 usual support costs will apply to additional support questions and issues that do not qualify for the specific update in question.

Prerequisites
No prerequisites are required.

Restart information
You do not have to restart the computer after you apply this hotfix.

Registry information
You have to change the registry after you apply this hotfix.

After you apply this hotfix, you must manually register the Microsoft.Biztalk.Adapters.CoreReceiver.dll file in the global assembly cache. Then, you must create a registry entry to increase the time-out period to more than 30 seconds.

To manually register the Microsoft.Biztalk.Adapters.CoreReceiver.dll file, use one of the following methods. The method that you use depends on whether you have Microsoft Visual Studio 2005 installed on the computer.

Method 1: Visual Studio 2005 is installed
To manually register the Microsoft.Biztalk.Adapters.CoreReceiver.dll file, follow these steps:  Click Start, point to All Programs, point to Microsoft Visual Studio 2005, point to Visual Studio Tools, and then click Visual Studio 2005 Command Prompt. At the Visual Studio command prompt, locate the following folder:

%ProgramFiles%\Common Files\Microsoft BizTalk Adapters for Enterprise Applications\Bin

 At the Visual Studio command prompt, run the following command:

gacutil /i Microsoft.Biztalk.Adapters.CoreReceiver.dll



Method 2: Visual Studio 2005 is not installed
To manually register the Microsoft.Biztalk.Adapters.CoreReceiver.dll file, follow these steps:  Click Start, click Run, type cmd, and then click OK. At the command prompt, locate the following folder:

%WINDIR%\Microsoft.NET\Framework\v1.1.4322

</li> At the command prompt, run the following command:

gacutil /i &quot; :\Program Files\Common Files\Microsoft BizTalk Adapters for Enterprise Applications\Bin\ Microsoft.Biztalk.Adapters.CoreReceiver.dll&quot;

</li></ol>

Note The BizTalk Adapter for Oracle Database uses the Microsoft .NET Framework 1.1.

After you apply this hotfix, you can increase the time-out period to more than 30 seconds. To increase the time-out period, you must create a registry key to set the time-out value that you want. To do this, follow these steps:  Click Start, click Run, type regedit, and then click OK.</li> Locate the appropriate registry key, depending on the type of operating system that you have: <ul> On a 32-bit-based server, locate the following registry subkey:

</li> On a 64-bit-based server, locate the following registry subkey:

</li></ul> </li> Right-click the registry subkey that you located in step 2, point to New, and then click DWORD Value.</li> Type BatchWaitTime, and then press ENTER.</li> Right-click the BatchWaitTime registry entry, and then click Modify.</li> In the Edit DWORD Value dialog box, click Decimal in the Base group box.</li> In the Edit DWORD Value dialog box, type a number in the Value data box.

Note The allowed range is 30,000 milliseconds to 300,000,000 milliseconds. By default, the value of this setting is 30,000 milliseconds. If this registry entry has been configured, an event message that contains the value of this registry entry is logged in the Application log.</li> Click OK.</li> Exit Registry Editor.</li></ol>

Hotfix replacement information
This hotfix does not replace any other hotfixes.

File information
This hotfix contains only those files that are required to correct the issues that this article lists. This hotfix may not contain all the files that you must have to fully update a product to the latest build.

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.

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

Note The Microsoft BizTalk Adapter for Oracle Database is 32-bit only.

<div class="status_section">

STATUS
Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the &quot;Applies to&quot; section.

<div class="moreinformation_section">

MORE INFORMATION
For more information about software update terminology, click the following article number to view the article in the Microsoft Knowledge Base:

824684 Description of the standard terminology that is used to describe Microsoft software updates

Keywords: kbpubtypekc kbqfe kbhotfixserver kbexpertiseadvanced kbfix KB941051

-

[mailto:TECHNET@MICROSOFT.COM Send feedback to Microsoft]

© Microsoft Corporation. All rights reserved.