SAP Cloud Integration’s SuccessFactors OData V2 adapter (version 1.8 onwards) provides you a feature to handle network issues in case of outbound connections. In the adapter specific settings, there is a checkbox,
Retry on Failure, that you can enable to use this feature. When you enable this feature, the adapter inherently retries connecting to the SuccessFactors service in case of specific HTTP errors.
This process is executed every three minutes, for a maximum of five times. If the connection fails even after five retries, the integration flow message processing status will display
Failed.
The Retry on Failure option is available only in case of data fetch operations, i.e. Query (GET) for SuccessFactors OData V2 adapter. |
You can check the component version for any component in SAP Cloud Integration by selecting the component and choosing the ‘
i’ (info) icon.
Retry Handling Explained
The SuccessFactors OData V2 adapter tries to establish a HTTP connection to the SuccessFactors system. If you have selected the
Retry on Failure checkbox in the adapter specific settings, the adapter will retry to establish a failed connection in case of the following HTTP errors:
- HTTP 502 (Bad Gateway)
- HTTP 503 (Service Unavailable)
- HTTP 504 (Gateway Timeout)
Please note that the retry option is applicable only for establishing the outbound connectivity from the adapter and not for the complete message processing.
Example Scenario
Consider the following scenario where we are trying to fetch data from a SuccessFactors OData service.
In the
Adapter Specific setting, the
Retry on Failure option is enabled to ensure that the adapter will retry establishing outbound connectivity in case it encounters one of the three HTTP error codes mentioned above. Please note that the retry option is displayed only if you select the
Query(GET) operation in
Operation Details.
After successfully deploying the integration flow, if the service has network issues, the adapter will try to reestablish the outbound connection to the SuccessFactors system every three minutes for a maximum of five times.
Let us assume that the service is returning the HTTP status 502 (Bad Gateway). Here’s an excerpt of the message processing log (MPL). The URI parameter has been masked in this excerpt for security reasons.
Message Processing Log:
StartTime = Mon Jan 22 05:27:48.917 UTC 2018
StopTime = Mon Jan 22 05:42:49.405 UTC 2018
OverallStatus = FAILED
ChildCount = 0
ChildrenCounter = 42
ContextName = Retry_Blog
CorrelationId = AFpldlRnkK5PDu-Rbrqd4wQXwj1_
IntermediateError = true
..
...
....
.....
SuccessFactors OData V2 Adapter Retry:
StartTime = Mon Jan 22 05:27:49.261 UTC 2018
ChildCount = 15
ModelStepId = ServiceTask_4
Response Status = Response Status for URI XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX is HTTP/1.1 502 Bad Gateway
StepId = to353#1516598869261
SuccessFactors OData V2 Adapter Retry:
StartTime = Mon Jan 22 05:27:49.265 UTC 2018
ChildCount = 16
ModelStepId = ServiceTask_4
Retry Status = Retry attempt 1 of 5 will be triggered in 3 minutes. Current time: Mon Jan 22 05:27:49 UTC 2018
StepId = to353#1516598869265
SuccessFactors OData V2 Adapter Retry:
StartTime = Mon Jan 22 05:27:49.265 UTC 2018
ChildCount = 17
ModelStepId = ServiceTask_4
Retry Status = Thread waiting for next retry..........
StepId = to353#1516598869265
SuccessFactors OData V2 Adapter Retry:
StartTime = Mon Jan 22 05:30:49.266 UTC 2018
ChildCount = 18
ModelStepId = ServiceTask_4
Retry Status = Thread resumed for retry.
StepId = to353#1516599049266
SuccessFactors OData V2 Adapter Retry:
StartTime = Mon Jan 22 05:30:49.266 UTC 2018
ChildCount = 19
ModelStepId = ServiceTask_4
Retry Status = Retry attempt 1 triggered at Mon Jan 22 05:30:49 UTC 2018
StepId = to353#1516599049266
SuccessFactors OData V2 Adapter Retry:
StartTime = Mon Jan 22 05:30:49.301 UTC 2018
ChildCount = 20
ModelStepId = ServiceTask_4
Response Status = Response Status for URI XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX is HTTP/1.1 502 Bad Gateway
StepId = to353#1516599049301
SuccessFactors OData V2 Adapter Retry:
StartTime = Mon Jan 22 05:30:49.301 UTC 2018
ChildCount = 21
ModelStepId = ServiceTask_4
Retry Status = Retry attempt 2 of 5 will be triggered in 3 minutes. Current time: Mon Jan 22 05:30:49 UTC 2018
StepId = to353#1516599049302
SuccessFactors OData V2 Adapter Retry:
StartTime = Mon Jan 22 05:30:49.302 UTC 2018
ChildCount = 22
ModelStepId = ServiceTask_4
Retry Status = Thread waiting for next retry..........
StepId = to353#1516599049302
SuccessFactors OData V2 Adapter Retry:
StartTime = Mon Jan 22 05:33:49.302 UTC 2018
ChildCount = 23
ModelStepId = ServiceTask_4
Retry Status = Thread resumed for retry.
StepId = to353#1516599229302
SuccessFactors OData V2 Adapter Retry:
StartTime = Mon Jan 22 05:33:49.302 UTC 2018
ChildCount = 24
ModelStepId = ServiceTask_4
Retry Status = Retry attempt 2 triggered at Mon Jan 22 05:33:49 UTC 2018
StepId = to353#1516599229302
SuccessFactors OData V2 Adapter Retry:
StartTime = Mon Jan 22 05:33:49.325 UTC 2018
ChildCount = 25
ModelStepId = ServiceTask_4
Response Status = Response Status for URI XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX is HTTP/1.1 502 Bad Gateway
StepId = to353#1516599229325
SuccessFactors OData V2 Adapter Retry:
StartTime = Mon Jan 22 05:33:49.326 UTC 2018
ChildCount = 26
ModelStepId = ServiceTask_4
Retry Status = Retry attempt 3 of 5 will be triggered in 3 minutes. Current time: Mon Jan 22 05:33:49 UTC 2018
StepId = to353#1516599229326
SuccessFactors OData V2 Adapter Retry:
StartTime = Mon Jan 22 05:33:49.326 UTC 2018
ChildCount = 27
ModelStepId = ServiceTask_4
Retry Status = Thread waiting for next retry..........
StepId = to353#1516599229326
SuccessFactors OData V2 Adapter Retry:
StartTime = Mon Jan 22 05:36:49.326 UTC 2018
ChildCount = 28
ModelStepId = ServiceTask_4
Retry Status = Thread resumed for retry.
StepId = to353#1516599409326
SuccessFactors OData V2 Adapter Retry:
StartTime = Mon Jan 22 05:36:49.326 UTC 2018
ChildCount = 29
ModelStepId = ServiceTask_4
Retry Status = Retry attempt 3 triggered at Mon Jan 22 05:36:49 UTC 2018
StepId = to353#1516599409326
SuccessFactors OData V2 Adapter Retry:
StartTime = Mon Jan 22 05:36:49.349 UTC 2018
ChildCount = 30
ModelStepId = ServiceTask_4
Response Status = Response Status for URI XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX is HTTP/1.1 502 Bad Gateway
StepId = to353#1516599409349
SuccessFactors OData V2 Adapter Retry:
StartTime = Mon Jan 22 05:36:49.350 UTC 2018
ChildCount = 31
ModelStepId = ServiceTask_4
Retry Status = Retry attempt 4 of 5 will be triggered in 3 minutes. Current time: Mon Jan 22 05:36:49 UTC 2018
StepId = to353#1516599409350
SuccessFactors OData V2 Adapter Retry:
StartTime = Mon Jan 22 05:36:49.350 UTC 2018
ChildCount = 32
ModelStepId = ServiceTask_4
Retry Status = Thread waiting for next retry..........
StepId = to353#1516599409350
SuccessFactors OData V2 Adapter Retry:
StartTime = Mon Jan 22 05:39:49.350 UTC 2018
ChildCount = 33
ModelStepId = ServiceTask_4
Retry Status = Thread resumed for retry.
StepId = to353#1516599589350
SuccessFactors OData V2 Adapter Retry:
StartTime = Mon Jan 22 05:39:49.350 UTC 2018
ChildCount = 34
ModelStepId = ServiceTask_4
Retry Status = Retry attempt 4 triggered at Mon Jan 22 05:39:49 UTC 2018
StepId = to353#1516599589350
SuccessFactors OData V2 Adapter Retry:
StartTime = Mon Jan 22 05:39:49.374 UTC 2018
ChildCount = 35
ModelStepId = ServiceTask_4
Response Status = Response Status for URI XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX is HTTP/1.1 502 Bad Gateway
StepId = to353#1516599589374
SuccessFactors OData V2 Adapter Retry:
StartTime = Mon Jan 22 05:39:49.374 UTC 2018
ChildCount = 36
ModelStepId = ServiceTask_4
Retry Status = Retry attempt 5 of 5 will be triggered in 3 minutes. Current time: Mon Jan 22 05:39:49 UTC 2018
StepId = to353#1516599589375
SuccessFactors OData V2 Adapter Retry:
StartTime = Mon Jan 22 05:39:49.375 UTC 2018
ChildCount = 37
ModelStepId = ServiceTask_4
Retry Status = Thread waiting for next retry..........
StepId = to353#1516599589375
SuccessFactors OData V2 Adapter Retry:
StartTime = Mon Jan 22 05:42:49.375 UTC 2018
ChildCount = 38
ModelStepId = ServiceTask_4
Retry Status = Thread resumed for retry.
StepId = to353#1516599769375
SuccessFactors OData V2 Adapter Retry:
StartTime = Mon Jan 22 05:42:49.375 UTC 2018
ChildCount = 39
ModelStepId = ServiceTask_4
Retry Status = Retry attempt 5 triggered at Mon Jan 22 05:42:49 UTC 2018
StepId = to353#1516599769375
SuccessFactors OData V2 Adapter Retry:
StartTime = Mon Jan 22 05:42:49.393 UTC 2018
ChildCount = 40
ModelStepId = ServiceTask_4
Response Status = Response Status for URI XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX is HTTP/1.1 502 Bad Gateway
StepId = to353#1516599769393
Exchange ID-vsa3644936-51618-1516596501297-93-2 failed:
StartTime = Mon Jan 22 05:42:49.399 UTC 2018
Status = FAILED
ChildCount = 41
ModelStepId = TimerEventDefinition_53201
The MPL indicates that the first retry is initiated by the Retry Status that states “Retry attempt 1 of 5 will be triggered in 3 minutes.” This process is repeated 5 times (you can see the message in Retry Status tag reflecting the retry number and time of retry). In this scenario, even after five retry attempts, the adapter is unable to reestablish the outbound connection. Consequently, the 'Status' in the last MPL entry indicates 'FAILED'.
Summary
The
Retry on Failure feature is provided to handle network issues that might occur in case of outbound connections. This feature is available in SuccessFactors OData V2 adapter version 1.8 onwards.
The similar feature is also available in SuccessFactors SOAP adapter.