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

Roman22
Mega Contributor

I have a script include that calls an outbound Rest Message. I have this set to run as a scheduled job. I get the "No response for ECC message request with sysid=#### after waiting for 30 seconds in ECC Queue" error within 1-4 outbound calls being made at a time.

 

Code snippet below, i set the midserver in the RestMessage record.  I have found two KB articles about the issue. Im trying to figure out what properties i need to create in instance.

First article is about the exact same error but specifies async outbound calls.

mentions i need to create two properties and set the values accordingly

  • glide.http.outbound.max_timeout
  • glide.http.outbound.max_timeout.enabled

https://hi.service-now.com/kb_view.do?sysparm_article=KB0744311

The next article mentions that if you are using a midserver and .execute, it implicitly is an async call. It also talks about ECC timeouts.

"The ECC timeout value is the amount of time that an asynchronous request will wait for the response to show up in the ECC Queue. This timeout applies to all asynchronous requests, both with a MID Server and without. However, this does not apply to synchronous requests because they do not use the ECC Queue. This can be controlled globally using the properties glide.rest.outbound.ecc_response.timeout or glide.soap.outbound.ecc_response.timeout. This is also controlled on a per request basis through passing the number of seconds to the waitForResponse(seconds) method."

https://hi.service-now.com/kb_view.do?sysparm_article=KB0694711

 

I would just like to know which properties i actually need to set. Any help would be appreciated.

 var r = new sn_ws.RESTMessageV2('NW Certificate KeyFactor Integration', 'GETCerts');

                                    //set a MID server name if one wants to run the message on MID
                                    //r.setMIDServer('MY_MID_SERVER');

                                    //if the message is configured to communicate through ECC queue, either
                                    //by setting a MID server or calling executeAsync, one needs to set skip_sensor
                                    //to true. Otherwise, one may get an intermittent error that the response body is null
									r.setHttpTimeout(120000);//Set Waittime to 2 minutes
                                    r.setEccParameter('skip_sensor', true);

                                    r.setStringParameter('limit', limit);
                                    r.setStringParameter('page', page);

                                    var response = r.execute();
									response.waitForResponse(120); //wait for 2 minutes. Apparently this impacts the ecc response time.
                                    var responseBody = response.getBody();
                                    var httpStatus = response.getStatusCode();
                                    if (httpStatus == 200 && responseBody != '') {

1 REPLY 1

Howard6
Tera Contributor

Did you find an answer to this?  I am trying to do the exact same thing and getting this error also.