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.