Find your people. Pick a challenge. Ship something real. The CreatorCon Hackathon is coming to the Community Pavilion for one epic night. Every skill level, every role welcome. Join us on May 5th and learn more here.

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...)