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

Mike Allen
Mega Sage

Check this property: glide.rest.outbound.ecc_response.timeout

Hi Mike,

 

As I mentioned, I have already specified an integer value of 360 for that system property.  Is there something else that I can specify for that property?

 

Thanks,

Russ

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

That worked!  Thank you so much Mike!  I had already tried adding the glide.rest.outbound.ecc_response.timeout System Property for 360 seconds, and had also added the waitForResponse(360) function call to my REST API response, but I needed to additionally add the glide.http.outbound.max_timeout.enabled property with the value set to false.