How can I avoid the "No response for ECC message request with sysid=xxx after waiting for 30 seconds in ECC Queue" message?

Russ Hancock
Tera Expert

Hello ServiceNow Community,

We are currently running London, Patch 7, and I have the following section of code in a Scheduled Job:

var r = new sn_ws.RESTMessageV2('AirWatch REST Message', 'get');

r.setStringParameterNoEscape('PageNumber', page);  // We are currently only processing 500 devices at a time for performance, so PageNumber pparameter will be incremented up to 1000 times if necessary.

r.setHttpTimeout(600000);

var response = r.executeAsync();

response.waitForResponse(360);

 

In addition to the response.waitForResponse(360); line above, I have also added the System Property glide.rest.outbound.ecc_response.timeout with an integer value of 360.  

But I am still receiving the error "No response for ECC message request with sysid=xxx after waiting for 30 seconds in ECC Queue".

 

Any idea why this REST API call is still timing out after only 30 seconds (instead of the 6 minutes I would expect based on the above settings)?

 

Thanks!

Russ

1 ACCEPTED SOLUTION

Sorry, didn't see that... this is from HI:

 

Error on REST/SOAP Outbound Message through MID Server - No response after waiting 30 seconds in ECC Queue
149 views
Number: KB0744311 
 

Symptoms

When trying to execute an asynchronous Outbound REST/SOAP message through MID Server, the error below is thrown if the response takes longer than 30 seconds (even when setting different timeout with waitForResponse() in your script):

No response for ECC message request with sysid=f1b7136fdb77a340973f87b3049619de after waiting for 30 seconds in ECC Queue


Release

Madrid, Kingston P14

Cause

  • Propertyglide.http.outbound.max_timeout
  • Description: Specifies the number of seconds that RESTMessageV2 and SOAPMessageV2 APIs wait for a response from a synchronous call. The maximum value is 30 seconds.

Resolution

To define a timeout longer than 30 seconds, set the glide.http.outbound.max_timeout.enabled system property to false and use the waitForResponse() method to set the timeout. For examples, see Asynchronous RESTMessageV2 example and Asynchronous SOAPMessageV2 example. If glide.http.outbound.max_timeout.enabled is set to true and a value is passed in the waitForResponse() method, the system uses the smallest value from either the waitForResponse() method or the glide.http.outbound.max_timeout system property.

Additional Information

View solution in original post

7 REPLIES 7

Very cool.  I am glad you were able to resolve it.

Thanks for taking time to post the solution. Solved my annoying intermittent issue as well. 

***If Correct/Helpful please take time mark as Correct/Helpful. It is much appreciated.***

Regards

Paul

Just adding that we never got Patch 7, but we were recently upgraded to London Patch 8 and experienced this same issue. Following the KB instructions to add the missing glide.http.outbound.max_timeout.enabled system property and set to false, resolved things for us.

Interesting to note, that property is documented as new with Madrid:

https://docs.servicenow.com/bundle/madrid-release-notes/page/release-notes/servicenow-platform/web-services-rn.html
 
Look like some Madrid logic may have been backported to London, but as of this post, it remains undocumented in London (https://docs.servicenow.com/bundle/london-platform-administration/page/administer/reference-pages/re...)