FIX: Remote function calls do not work after the WCF-based SAP adapter receives the RFC_FAILURE error code in BizTalk Adapter Pack

Article translations Article translations
Article ID: 2556304 - View products that this article applies to.
Expand all | Collapse all

On This Page

This article applies to the following product:
  • BizTalk Adapter Pack 2.0
  • BizTalk Adapter Pack 2010

SYMPTOMS

Consider the following scenario:
  • A client program uses the Microsoft Windows Communication Foundation (WCF)-based SAP adapter (also known as Microsoft BizTalk Adapter for mySAP Business Suite 3.0) to invoke some remote function calls in the WCF service model on an SAP system.

    Note This adapter is included in Microsoft BizTalk Adapter Pack 2.0 or in Microsoft BizTalk Adapter Pack 2010.
  • A network issue occurs, and the WCF-SAP adapter loses its connection to the SAP system.
In this scenario, the SAP system returns the RFC_FAILURE error code and remote function calls do not work. Additionally, a ThreadAbortException exception is encountered, and you receive the following error:
System.Threading.ThreadAbortException: Thread was being aborted.

at RfcCallReceiveExU(UInt32 , Char* , RFC_PARAMETER* , RFC_PARAMETER* , RFC_PARAMETER* , RFC_TABLE* , Char** )

at Microsoft.Adapters.SAP.CNativeInvoker.Invoke(CNativeInvoker* , UInt32 connectionHandle, Char* m_szFunctionName)

After a while, many RFCException exceptions are encountered, and you receive many errors that resemble the following:
Microsoft.Adapters.SAP.RFCException: Details: ErrorCode=RFC_FAILURE. AdapterErrorMessage=Error returned by RfcCallReceiveEx while calling RFC: Z_GET_PO_BY_SAP.

Also, the following call stack trace is generated on the BizTalk server:
at Microsoft.Adapters.SAP.RFCException.HelperThrow(Int32 retCode, String additionalErrorMessage)

at Microsoft.Adapters.SAP.RfcOutboundInvoker.Invoke()

CAUSE

This issue occurs because the WCF-SAP adapter incorrectly reuses the SAP channel in the SAP system.

After the WCF-SAP adapter receives the RFC_FAILURE error code, the WCF-SAP adapter encounters an error. Therefore, the SAP channel in the SAP system is incorrectly reused.

RESOLUTION

Cumulative update information

For BizTalk Adapter Pack 2010

The hotfix that resolves this issue is included in cumulative update package 2 for BizTalk Adapter Pack 2010. For more information about how to obtain this cumulative update package, click the following article number to view the article in the Microsoft Knowledge Base:

2572999Cumulative update package 2 for BizTalk Adapter Pack 2010

For BizTalk Adapter Pack 2.0

The hotfix that resolves this issue is included in cumulative update package 3 for BizTalk Adapter Pack 2.0.

For more information about how to obtain the cumulative update package, click the following article number to view the article in the Microsoft Knowledge Base:
2557150 Cumulative update package 3 for BizTalk Adapter Pack 2.0

STATUS

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

MORE INFORMATION

For more information about how to use the WCF service model to invoke RFCs, visit the following MSDN website:
How to use the WCF service model to invoke RFCs
For more information about BizTalk Server hotfixes, click the following article number to view the article in the Microsoft Knowledge Base:
2003907 Information about BizTalk Server hotfixes

Properties

Article ID: 2556304 - Last Review: August 31, 2011 - Revision: 2.0
APPLIES TO
  • Microsoft BizTalk Adapter 2.0 for SAP
Keywords: 
kbqfe kbfix kbbtsadapters kbexpertiseadvanced kbsurveynew KB2556304

Give Feedback

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com