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

Jordan Zimmerman resolved CURATOR-544.
--------------------------------------
    Fix Version/s: 5.0.0
       Resolution: Fixed

> Implement SessionFailedRetryPolicy
> ----------------------------------
>
>                 Key: CURATOR-544
>                 URL: https://issues.apache.org/jira/browse/CURATOR-544
>             Project: Apache Curator
>          Issue Type: New Feature
>          Components: Client
>            Reporter: Zili Chen
>            Priority: Major
>             Fix For: 5.0.0
>
>          Time Spent: 1h 20m
>  Remaining Estimate: 0h
>
> [https://lists.apache.org/x/thread.html/2549c310c1e3232d2f746bf1cf7110c094ea2ca9d1e54b34b75a508f@%3Cuser.curator.apache.org%3E]
> Currently Curator will always reset on session expire and instance a new ZK 
> client as well as recover state.
> Because on session expire ephemeral znodes get deleted, some of user cases 
> possibly want to manually handle session expire before automatically reset 
> {{o.a.c.ConnectionState}}.
> -I propose implement a {{SessionConnectionHandlingPolicy}} whose 
> {{callWithRetry}} use {{SessionFailRetryLoop}} so that 
> {{o.a.c.ConnectionState}} fails on session expired.-
> -BTW, it would be a user-friendly way to make user of 
> {{SessionFailRetryLoop}}.-
> I volunteer to work on an implementation.
> What do you think?
> CC [~randgalt]
> As time goes by, we change a bit what API looks like. For implement the same 
> functionality, we change code of RetryPolicy instead. To be brief, we (1) 
> move {{RetryLook.isRetriableException}} to 
> {{RetryPolicy#allowRetry(Exception)}} and existing impls have a default impl 
> that keeps the manner (2) impl a {{SessionFailedRetryPolicy}} that throws 
> when {{SessionExipredException}} tested, while the other examination 
> delegated to another policy.



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

Reply via email to