[ 
https://issues.apache.org/jira/browse/CURATOR-533?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jordan Zimmerman resolved CURATOR-533.
--------------------------------------
    Resolution: Fixed

> Improve CURATOR-505 by making the CircuitBreaker instance shared
> ----------------------------------------------------------------
>
>                 Key: CURATOR-533
>                 URL: https://issues.apache.org/jira/browse/CURATOR-533
>             Project: Apache Curator
>          Issue Type: Improvement
>          Components: Framework, Recipes
>    Affects Versions: 4.2.0
>            Reporter: Jordan Zimmerman
>            Assignee: Jordan Zimmerman
>            Priority: Major
>             Fix For: 4.2.1
>
>          Time Spent: 3h 10m
>  Remaining Estimate: 0h
>
> CURATOR-505 introduced circuit breaking behavior via 
> {{CircuitBreakingConnectionStateListener}} and 
> {{ConnectionStateListenerDecorator}}. Elastic has been using it to success 
> but reports that the implementation can be improved. The existing 
> implementation uses a new {{CircuitBreaker}} for each 
> {{ConnectionStateListener}} set in a Curator client. It turns out that this 
> is not ideal. Instead, a shared {{CircuitBreaker}} should be used per Curator 
> client.
> Unfortunately, the best way to do this is to remove the 
> {{ConnectionStateListenerDecorator}} semantics and use a different mechanism. 
> This Issue proposes to do this and remove 
> {{ConnectionStateListenerDecorator}}. This is a breaking change but given the 
> short amount of time it's been in Curator it's unlikely that it's been widely 
> adopted. 
> If the community considers a breaking change too harsh the older classes can 
> be maintained for a while and marked as {{@Deprecated}}.



--
This message was sent by Atlassian JIRA
(v7.6.14#76016)

Reply via email to