No ratings

Code Fix: Timeout when running a SmartObject in K2 connect for SAP

 

Code Fix: Timeout when running a SmartObject in K2 connect for SAP

 

Introduction

 

A timeout error is received from the K2 connect Server when a SmartObject is used to retrieve a large volume of data records from an SAP BAPI, for example in excess of 10,000 records per query

The specific circumstances under which the timeout occurs, are network dependant.

 

 

Error Scenario

A K2 connect Service Object is used to create a SmartObject and the SmartObject is used to retrieve records via the ServiceObject from a SAP BAPI. When a remote connection is made from the SmartObject K2 connect Service, which uses the client proxy to connect to the hosted assembly (ServiceObject.dll)  and a large volume of data is in the process of being returned, a time out error is received. The error message is the result of system settings that only allow for 300 seconds to retrieve data and when that time allocation is exceeded, owing to the high data volume the error is thrown.

Note: If the K2 connect for SAP Test Cockpit is used, this error is not encountered for the same query

 

 

Error Messages

ConnectService: The response has not been received within the specified period of time.

 

 

Error Resolution

This hotfix enhances the performance for queries that return high data volumes by allowing the timeout period and data volume parameters to be adjusted to values that better suit the query requirements. Once the Hotfix Installer has been run, two registry entries are required and they need to be entered manually by the system's Administrator. They are "Timeout", with it's value in seconds (s) and "Maxsize" with it's value in bytes.

Note: If the registry entries are not created by the System's Administrator, SAP will defer to it's default values of Maxsize= 20000000 (bytes) and Timeout = 500 (seconds). The registry entries would only be required if the default values do not allow the query to return the data volume within the specified time.

To make the changes, do the following

  1. Obtain the download for this Knowledge Base Article and install it
  2. Stop the K2 connect for SAP Service using the K2 connect for SAP Administration tools
  3. Open the system registry, and do the following:
    1. Locate the registry key:
      • For 32 bit system:
        HKEY_LOCAL_MACHINE\SOFTWARE\SourceCode\connect\Configuration
      • For 64 bit system:
        HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\SourceCode\connect\Configuration
  4. Manually create the String value "Timeout" and specify a timeout value in seconds e.g. 300
  5. Manually create the String value "Maxsize" and specify a timeout value in bytes e.g. 25000000 
  6. Restart the K2 blackpearl Server, this is required to refresh the service instance
  7. Restart the K2 connect for SAP Service
Note: Some experimentation may be required to determine the ideal values for the Timeout and Maxsize parameters, as the required values would depend on the volume of data it returns and the rate at which the network infrastructure allows the data to be returned. The optimum settings are dependent on the network and the data returned.

 

Labels: (1)
Version history
Last update:
‎04-07-2022 05:56 AM
Updated by: