You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cxf.apache.org by "Andriy Redko (Jira)" <ji...@apache.org> on 2020/05/27 02:51:00 UTC

[jira] [Commented] (CXF-8289) CircuitBreakerFailoverFeature does not work together with RetryStrategy (only one single endpoint available)

    [ https://issues.apache.org/jira/browse/CXF-8289?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17117259#comment-17117259 ] 

Andriy Redko commented on CXF-8289:
-----------------------------------

[~kwin]

> Unfortunately this does not work as expected because in case an error happens with one endpoints it will retry the same endpoint {{threshold}} > times without any waiting in between and afterwards will mark the endpoint as not available and give up.

This is not strictly correct statement. Each failover strategy provides the way to set the delay between retries using `setDelayBetweenRetries` property.
{code:java}
strategy.setDelayBetweenRetries(5000);{code}
However indeed, the CB budget will be burned without taking the retry strategy settings into account.

> CircuitBreakerFailoverFeature does not work together with RetryStrategy (only one single endpoint available)
> ------------------------------------------------------------------------------------------------------------
>
>                 Key: CXF-8289
>                 URL: https://issues.apache.org/jira/browse/CXF-8289
>             Project: CXF
>          Issue Type: Improvement
>          Components: Clustering
>    Affects Versions: 3.3.6
>            Reporter: Konrad Windszus
>            Priority: Major
>
> The retry strategy allows to retry from the same endpoint. I would like to combine this with the CircuitBreakerFailoverFeature. Unfortunately this does not work as expected because in case an error happens with one endpoints it will retry the same endpoint {{threshold}} times without any waiting in between and afterwards will mark the endpoint as not available and give up.
> In the case that only one endpoint is available it should instead retry {{threshold}} times without waiting and afterwards try again the same endpoint after waiting {{timeout}}. That should be repeated as often as {{maxNumberOfRetries}} given in the underlying {{RetryStrategy}}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)