Synchronous timeout exceeded error in sap pi

A lot of time working on the synchronous scenario we see timeout exceeded error in sap pi.

Usually, to overcome this error we need to set the Java parameter in NWA but after SAP PI 7.31 we have the option of setting timeout parameter on the channel itself. This remains specific to that interface which has more advantages of not touching timeout parameter in global settings which affects all interfaces. It is very simple now to set the parameter in adapter module if we get synchronous timeout exceeded error in sap pi.

Following channels which can use this features

  • File/FTP
  • JDBC,
  • RFC,
  • SOAP,
  • XI,
  • HTTP (AAE),
  • IDoc (AAE)

In this example, I am using SOAP sender channel.

The error will be something like below.In this case, global timeout parameter is set to 2 mins.

timeout exceed in sap pi

 

 

 

Where to set the parameter

Parameter syncTimeout is needed to be set in adapter module.The CallSapAdapter module reads the value of module parameter syncTimeout .

Note: timeout period in milliseconds

Synchronous timeout exceeded error in sap pi

If this parameter is set on channel it will take precedence over Global settings

How does it work

SAP has enhanced CallSapAdapter module to select the timeout value at runtime and pass the value to the messaging system. As a result, the channel-specific timeout function is available to all the adapters that use the CallSapAdapter module.

During runtime, if the CallSapAdapter module finds syncTimeout settings it adds it in system header to the message for the receiver messaging system with the namespace http://sap.com/xi/XI/Message/30/general .

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.