< class="prominent-subhead ">

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

This article has been archived, and/or refers to legacy products, components or features. The content in this article is offered "as is" and will no longer be updated. Archived content is provided for reference purposes only. This content does not infer that the product, component or feature is supported, or that the product, component or feature will continue to function as described herein.


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 HKEY_LOCAL_MACHINE\SOFTWARE\SourceCode\connect\Configuration
    2. Manually create the String value "Timeout" and specify a timeout value in seconds e.g. 30
    3. Manually create the String value "Maxsize" and specify a timeout value in bytes e.g. 20000000 (This is the default value)
    4. Restart the K2 blackpearl Server, this is required to refresh the service instance
    5. 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 dependant on the network and the data returned.

This Hotfix is contained within the lastest K2 connect for SAP Update. The latest K2 connect for SAP Update is available as an independant installation package which can be found here: http://portal.k2.com/downloads/k2connect/default.aspx