Issue
Experiencing REST API timeouts after a recent upgrade? This article provides helpful troubleshooting information and steps to resolve the issue.
Symptoms
After upgrading to Madrid, Kingston Patch 14 or higher, or London Patch or higher, outbound API messaging, RESTMessageV2 and SOAPMessageV2 API calls, may start to time out after 30 seconds for a response. But before the upgrade the timeouts did not occur.
You might see errors such as this in the logs:
Error: No response for ECC message request with sysid=nnnn... after waiting for 30 seconds in ECC Queue
Release
- Madrid
- London Patch 7 (or higher)
- Kingston Patch 14 (or higher)
Cause
In Madrid, London Patch 7+, and Kingston Patch 14+, two system properties were added on the backend:
glide.http.outbound.max_timeout with a maximum value of 30 seconds
glide.http.outbound.max_timeout.enabled with a default value of true
The property glide.http.outbound.max_timeout specifies the number of seconds that RESTMessageV2 and SOAPMessageV2 APIs wait for a response from a synchronous call, and the default and maximum value for this property is 30 seconds. As a result, outbound REST and SOAP API calls will start to time out after waiting 30 seconds for a response.
Resolution
To resolve this issue, perform both of the following:
- Add the following system property on the UI:
Name: glide.http.outbound.max_timeout.enabled
Type: boolean
Value: false - Use the waitForResponse() method to set the timeout in the REST or SOAP messages.
Here are some examples:
Asynchronous RESTMessageV2 example
Asynchronous SOAPMessageV2 example
Related Links
The properties glide.http.outbound.max_timeout and glide.http.outbound.max_timeout.enabled may not be documented in the Kingston and London documentation since they were added to these releases in later patches.