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

Jordan Zimmerman commented on ZOOKEEPER-723:
--------------------------------------------

I suggest a compromise solution. Ephemeral parent znodes may still be needed, 
but my suggestion would solve many of the problems:

    public boolean deleteIfNoChildren(String path, ...)

This would be an atomic operation that deletes a node iff it has no children. 
This pushes a lot of the burden to ZK users but it at least makes garbage 
collection possible.
                
> ephemeral parent znodes
> -----------------------
>
>                 Key: ZOOKEEPER-723
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-723
>             Project: ZooKeeper
>          Issue Type: New Feature
>          Components: server
>            Reporter: Benjamin Reed
>            Assignee: Daniel Gómez Ferro
>         Attachments: ZOOKEEPER-723.patch, ZOOKEEPER-723.patch
>
>
> ephemeral znodes have the nice property of automatically cleaning up after 
> themselves when the creator goes away, but since they can't have children it 
> is hard to build subtrees that will cleanup after the clients that are using 
> them are gone.
> rather than changing the semantics of ephemeral nodes, i propose ephemeral 
> parents: znodes that disappear when they have no more children. this cleanup 
> would happen automatically when the last child is removed. an ephemeral 
> parent is not tied to any particular session, so even if the creator goes 
> away, the ephemeral parent will remain as long as there are children.
> the when an ephemeral parent is created it will have an initial child, so 
> that it doesn't get immediately removed. i think this child should be an 
> ephemeral znode with a predefined name, "firstChild".

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira


Reply via email to