[ 
https://issues.apache.org/jira/browse/CURATOR-106?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14020388#comment-14020388
 ] 

Evaristo commented on CURATOR-106:
----------------------------------

When the ZK goes down you do not get the Exception, and the function is not 
recursively called. Guaranteed delete() has a callback function that handles 
the errors, so I guess this is not an issue. What do you think Jordan?

    void addFailedDelete(String path)
    {
        if ( client.isStarted() )
        {
            log.debug("Path being added to guaranteed delete set: " + path);
            try
            {
                client.delete().guaranteed().inBackground().forPath(path);
            }
            catch ( Exception e )
            {
                addFailedDelete(path);
            }
        }
    }

> Issuing a guaranteed delete can cause stack overflow if ZK is not reachable
> ---------------------------------------------------------------------------
>
>                 Key: CURATOR-106
>                 URL: https://issues.apache.org/jira/browse/CURATOR-106
>             Project: Apache Curator
>          Issue Type: Bug
>          Components: Framework
>    Affects Versions: 2.4.2
>            Reporter: Jasdeep Hundal
>
> For guaranteed deletes (eg. lock releases) that fail, the FailedDeleteManager 
> issues another guaranteed delete here:
> https://github.com/apache/curator/blob/master/curator-framework/src/main/java/org/apache/curator/framework/imps/FailedDeleteManager.java#L35
> In an environment where ZK has the potential to be down for an extended 
> period of time, this has the potential to recurse until there is a stack 
> overflow (particularly if the application is using multiple locks.)



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to