we have a Real-Time Service (published as a Web Service) which uses a direct table read via Salesforce Adapter.
Since the connections in Adapter instance sometimes get lost, i’ve permanently started 2 instances in Real-Time Service.
Max instances is 3.
In manual i’ve found to set the Max processing retry count to 4 to avoid requests without responses.
My expectation is, that in case Salesforce adapter has a problem the real-time services instances will restart (they’re doing that!) and will max 4 times try to (re-)process the same request.
But if i simulate this outage (shutdown Salesforce Adapter and start up while Real-Time Services is running) and then send in a Request via SoapUI i get a “Unable to process the request…” Response.
I can see that the Real-Time Services are restarting automatically, but the retry of 4 times seems not to work.
I think the retry is done for the request that fails because of connection issue with the service, like the service is not running etc not for the request that reach the RT Service but fail to process (due to Adapter Connection getting reset)
in this case, your client application has to do a retry
But then i don’t understand the functionality of “Processing retry count max”??!
The technical manual says:
So in my case, the access server is forwarding the request to real-time service.
It makes the processing but it failed due to connection issue with Salesforce adapter (or oracle table).
So the access server gets an (connection) error back…
My understanding was that in that case the access server will try again (with the automatically restarted Real-Time Service) because error message was received.
In which situation else the processing retry count max will become “active” ?
no access server will not retry in this case ,since the Message was delivered to the service which failed for reasons unknown to the access server, access servers job is done as soon as message is delivered to the service
on the other hand the client application sending the message can do a retry, but I am not sure if DS Webservice for the RT Service is returning the error encountered by job while processing the message, what is the error you get on the client side ? failed to process request or timeout or the error that was encountered by the job ?