curator-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jordan Zimmerman (JIRA)" <>
Subject [jira] [Resolved] (CURATOR-533) Improve CURATOR-505 by making the CircuitBreaker instance shared
Date Tue, 13 Aug 2019 15:00:00 GMT


Jordan Zimmerman resolved CURATOR-533.
    Resolution: Fixed

> Improve CURATOR-505 by making the CircuitBreaker instance shared
> ----------------------------------------------------------------
>                 Key: CURATOR-533
>                 URL:
>             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

View raw message