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

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

                Author: ASF GitHub Bot
            Created on: 08/Jul/22 17:13
            Start Date: 08/Jul/22 17:13
    Worklog Time Spent: 10m 
      Work Description: tisonkun commented on PR #429:
URL: https://github.com/apache/curator/pull/429#issuecomment-1179204884

   Previous PR #348.
   
   cc @eolivelli @Randgalt @cammckenzie 




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

    Worklog Id:     (was: 789085)
    Time Spent: 3.5h  (was: 3h 20m)

> 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: 3.5h
>  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