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

Angad Singh updated CURATOR-617:
--------------------------------
    Attachment: ZookeeperTest.java

> UnregisterService Method in ServiceDiscoveryImpl is non-Idempotent in case of 
> connection-failure
> ------------------------------------------------------------------------------------------------
>
>                 Key: CURATOR-617
>                 URL: https://issues.apache.org/jira/browse/CURATOR-617
>             Project: Apache Curator
>          Issue Type: Bug
>    Affects Versions: 5.1.0
>         Environment: Windows 10, 64-Bit
>            Reporter: Angad Singh
>            Assignee: Jordan Zimmerman
>            Priority: Major
>         Attachments: ZookeeperTest.java
>
>
> The unregisterService( ) method in ServiceDiscoveryImpl throws an unhandled 
> KeeperException.ConnectionLossException the first time it is invoked while 
> the server connection is down. The next time, however, the service has 
> already been removed from the internal _services_ cache. Hence the 
> internalUnregisterService function does not proceed since the entry is null 
> the second time around.
> We are not using the blockUntilConnected option, and instead are trying to 
> implement a local retry mechanism. We are dependent upon the 
> ConnectionLossException to be thrown, in order to catch and evaluate it 
> before retrying with an exponential back-off.



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

Reply via email to