You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@curator.apache.org by "ASF GitHub Bot (Jira)" <ji...@apache.org> on 2020/05/04 05:31:00 UTC

[jira] [Work logged] (CURATOR-544) Implement SessionFailedRetryPolicy

     [ https://issues.apache.org/jira/browse/CURATOR-544?focusedWorklogId=430007&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-430007 ]

ASF GitHub Bot logged work on CURATOR-544:
------------------------------------------

                Author: ASF GitHub Bot
            Created on: 04/May/20 05:30
            Start Date: 04/May/20 05:30
    Worklog Time Spent: 10m 
      Work Description: TisonKun opened a new pull request #363:
URL: https://github.com/apache/curator/pull/363


   More details on [JIRA](https://issues.apache.org/jira/browse/CURATOR-544#).
   
   The breaking parts are we remove `RetryLoop.shouldRetry` & `RetryLoop. isRetryException` but it is no harm to add them back if we want to keep public APIs.
   
   cc @Randgalt @shayshim 


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Issue Time Tracking
-------------------

            Worklog Id:     (was: 430007)
    Remaining Estimate: 0h
            Time Spent: 10m

> 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
>          Time Spent: 10m
>  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)