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

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

                Author: ASF GitHub Bot
            Created on: 08/Jul/22 17:12
            Start Date: 08/Jul/22 17:12
    Worklog Time Spent: 10m 
      Work Description: tisonkun opened a new pull request, #429:
URL: https://github.com/apache/curator/pull/429

   Signed-off-by: tison <wander4...@gmail.com>




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

    Worklog Id:     (was: 789084)
    Time Spent: 3h 20m  (was: 3h 10m)

> Remove ConnectionHandlingPolicy
> -------------------------------
>
>                 Key: CURATOR-562
>                 URL: https://issues.apache.org/jira/browse/CURATOR-562
>             Project: Apache Curator
>          Issue Type: Improvement
>          Components: Framework
>            Reporter: Zili Chen
>            Assignee: Jordan Zimmerman
>            Priority: Major
>             Fix For: 5.0.0
>
>          Time Spent: 3h 20m
>  Remaining Estimate: 0h
>
> Back to the day we bump Curator from 2.x to 3.0 we introduce 
> {{ConnectionHandlingPolicy}} as a bridge that provides different strategy on 
> handling different session timeout logic.
> Things changed and now only the {{StandardConnectionHandlingPolicy}} survive, 
> who has two methods
> 1. {{checkTimeouts}} totally static utility. Besides, some values in 
> {{CheckTimeoutsResult}} seems out of day that we might have a follow-up to 
> handle it. Anyway, I don't thing anyone outside Curator should change the 
> behavior here since it is tight couple with how {{o.a.c.ConnectionState}} 
> works.
> 2. {{callWithRetry}} it is actually a consignee of 
> {{RetryLoop#callWithRetry}}. According to its implementation it seems hardly 
> an outside user can properly define his {{callWithRetry}} method.
> Thus, I propose that we flatten this legacy class.
> DISCLAIMER:
> The place from where I come here is CURATOR-544 that I'd like to implement a 
> user-friendly option to enable Curator blocks its regenerate ZooKeeper client 
> logic on {{SESSIONEXPIRED}}.
> However, neither {{ConnectionHandlingPolicy}} nor {{RetryLoop}} nor 
> {{RetryPolicy}} is a good place since implementations coupled quite a bit. 
> And the real regeneration logic hided inside {{ConnectionState}}.
> Thus I'm willing to do a bit code cleanups to see where we can properly 
> inject such logics.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to